in reply to Re^3: Multi-column Tk:Optionmenu?
in thread Multi-column Tk:Optionmenu?

SUCCESS!!! (except for making it modal. I looked at the code in Show that handles modal-ness and my eyes kind of glazed over ... any insight into how that stuff works would be appreciated! :o)) The following does pretty much just what I wanted. Only slight problem is where the TL pops up -- a little more research in how how the PopUp stuff handles "make the thing pop up HERE" and I think I've got what I was looking for!

Meta question: is this worth cleaning up and turning into a real widget, or should I just go back into my hole and use it for my app?
#!/usr/bin/perl # Test to see if we can make our own multi-column menu out of ## a toplevel and radiobuttons use strict ; use warnings ; use Tk ; my $mw = MainWindow->new ; $mw->Button(-text => "Make menu", -command => \&GenMenu)->pack ; my $picked ; $mw->Entry(-state => 'disabled', -textvariable => \$picked)->pack ; MainLoop() ; my $menuselect ; my $TL ; sub GenMenu { $TL = $mw->Toplevel ; for my $f (1 .. 3) { my $frame = $TL->Frame->pack(-side => 'left'); for my $menu (1 .. 5) { Radio($frame, "Column $f, Row $menu", $f*5 + $menu) ; } } $TL->focus ; } sub PickedMenu { $picked = "You picked entry $menuselect" ; $TL->destroy ; } sub Radio { $_[0]->Radiobutton(-text => $_[1], -value => $_[2], -variable => \$menuselect, -indicatoron => undef, -command => \&PickedMenu)->pack(-fill => 'x') ; }