中村です。
質問です。ruby/tk で cascade menu は
どう書いたら良いのでしょうか?
たとえば、Tcl/Tk でこんなやつです。
#!/usr/local/bin/wish4.2jp
frame .mbar -relief raised -bd 2
pack .mbar -side top -fill x
menubutton .mbar.file -text {File} -underline 0 -menu .mbar.file.menu
pack .mbar.file -side left
menu .mbar.file.menu
.mbar.file.menu add cascade -label {Cascades} \
-menu .mbar.file.menu.hoge
.mbar.file.menu add command -label {Quit} -command {exit}
menu .mbar.file.menu.hoge
.mbar.file.menu.hoge add command -label hoge -command {puts hoge}
.mbar.file.menu.hoge add command -label hoge^2 -command {puts hogehoge}
途中まで ruby/tk で書いてみたのですが、
cascade をどうやって書けば良いのか
分かりませんでした。
#!/usr/local/bin/ruby
require "tk"
mbar = TkFrame.new {
relief 'raised'
borderwidth 2
}
mbar.pack('fill' => 'x')
TkMenubutton.new(mbar) {|mb|
text "File"
underline 0
menu TkMenu.new(mb) {
add 'cascade', 'label' => 'Cascades', 'underline' => 0
add 'command', 'label' => 'hoge',
'command' => proc{print "hoge\n"}
add 'command', 'label' => 'hoge^2',
'command' => proc{print "hogehoge\n"}
add 'command', 'label' => 'Quit',
'underline' => 0, 'command' => proc{exit}
}
pack('side' => 'left')
}
Tk.mainloop
よろしくお願いいたします。
# はやく lib/ruby/tk*.rb 読めるようになりたい…
中村典嗣 E-mail: nnakamur / mxq.meshnet.or.jp