2 # menubar sample 1 : use frame and menubuttons
7 radio_var = TkVariable.new('y')
11 {:label=>'Open', :command=>proc{puts('Open clicked')}, :underline=>0},
13 ['Check_A', TkVariable.new(true), 6],
14 {:type=>'checkbutton', :label=>'Check_B',
15 :variable=>TkVariable.new, :underline=>6},
17 ['Radio_X', [radio_var, 'x'], 6, '', {:foreground=>'black'}],
18 ['Radio_Y', [radio_var, 'y'], 6],
19 ['Radio_Z', [radio_var, 'z'], 6],
22 ['sss', proc{p 'sss'}, 0],
23 ['ttt', proc{p 'ttt'}, 0],
24 ['uuu', proc{p 'uuu'}, 0],
25 ['vvv', proc{p 'vvv'}, 0],
28 {:font=>'Courier 16 italic',
29 :menu_config=>{:font=>'Times -18 bold', :foreground=>'black'}}],
31 ['Quit', proc{exit}, 0]],
34 ['Cut', proc{puts('Cut clicked')}, 2],
35 ['Copy', proc{puts('Copy clicked')}, 0],
36 ['Paste', proc{puts('Paste clicked')}, 0]],
38 [['Help', 0, {:menu_name=>'help'}],
39 ['About This', proc{puts('Ruby/Tk menubar sample 1')}, 6]]
42 menubar = TkMenubar.new(nil, menu_spec,
44 'foreground'=>'grey40',
45 'activeforeground'=>'red',
46 'font'=>'Helvetia 12 bold')
47 menubar.pack('side'=>'top', 'fill'=>'x')
49 TkText.new(:wrap=>'word').pack.insert('1.0', 'Please read the sample source, and check how to override default configure options of menu entries on a menu_spec. Maybe, on windows, this menubar does not work properly about keyboard shortcuts. Then, please use "menu" option of root/toplevel widget (see sample/menubar2.rb).')