mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
remove marshal/gtk/kconv
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
210367ec88
commit
0a64817fb8
124 changed files with 14604 additions and 10219 deletions
50
ext/tk/sample/tktimer.rb
Normal file
50
ext/tk/sample/tktimer.rb
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
#!/usr/local/bin/ruby
|
||||
# This script generates a counter with start and stop buttons.
|
||||
|
||||
require "tk"
|
||||
$label = TkLabel.new {
|
||||
text '0.00'
|
||||
relief 'raised'
|
||||
width 10
|
||||
pack('side'=>'bottom', 'fill'=>'both')
|
||||
}
|
||||
|
||||
TkButton.new {
|
||||
text 'Start'
|
||||
command proc {
|
||||
if $stopped
|
||||
$stopped = FALSE
|
||||
tick
|
||||
end
|
||||
}
|
||||
pack('side'=>'left','fill'=>'both','expand'=>'yes')
|
||||
}
|
||||
TkButton.new {
|
||||
text 'Stop'
|
||||
command proc{
|
||||
exit if $stopped
|
||||
$stopped = TRUE
|
||||
}
|
||||
pack('side'=>'right','fill'=>'both','expand'=>'yes')
|
||||
}
|
||||
|
||||
$seconds=0
|
||||
$hundredths=0
|
||||
$stopped=TRUE
|
||||
|
||||
def tick
|
||||
if $stopped then return end
|
||||
Tk.after 50, proc{tick}
|
||||
$hundredths+=5
|
||||
if $hundredths >= 100
|
||||
$hundredths=0
|
||||
$seconds+=1
|
||||
end
|
||||
$label.text format("%d.%02d", $seconds, $hundredths)
|
||||
end
|
||||
|
||||
root = Tk.root
|
||||
root.bind "Control-c", proc{root.destroy}
|
||||
root.bind "Control-q", proc{root.destroy}
|
||||
Tk.root.focus
|
||||
Tk.mainloop
|
||||
Loading…
Add table
Add a link
Reference in a new issue