Morton Goldberg
9/26/2006 1:54:00 PM
On Sep 26, 2006, at 3:12 AM, matthias@kl-mailer.de wrote:
> Hi list,
>
> i'm working on gui using ruby/tk.
> Everything went fine (exept the poor documentation), but now i have a
> problem with submenus. A small example-code to demonstrate the issue:
>
> menu = TkMenu.new
> menu.add_command('label' => 'Foo', 'command' => lambda { p "foo" })
> sub = TkMenu.new
> sub.add_command('label' => 'Bar', 'command' => lambda { p "bar" })
> menu.add_cascade('label' => 'submenu', 'menu' => sub)
>
> canvas = TkCanvas.new
> canvas.bind('1') {|e| menu.popup e.x_root, e.y_root}
> canvas.pack
>
> Tk.mainloop
>
> The code works nearly as expected, menu appears an has correct
> content.
> If i click on "Foo", text "foo" is written to the console, but if i
> click on
> "Bar" nothing happens :(
> Any idea what's going wrong?
>
> Ruby: ruby 1.8.5 (2006-08-25) [i486-linux]
> Linux: Linux version 2.6.12 (root@louipaz) (gcc version 3.3.6 (Debian
> 1:3.3.6-13))
No problem with your code on my box -- Mac OS X 10.4, ruby 1.8.2.
Regards, Morton