#!usr/bin/perl -- use strict; use warnings; $Tkx::TRACE = 64; use Tkx; my $mw = Tkx::widget->new("."); { my @fail_crit = ( '1. Maximum Strain', '2. Maximum Stress', '3. Tsai-Hill', '4. Modified Tsai-Wu', '5. Hoffman', ); my $chosen = ""; my $frame = $mw->new_ttk__frame(); $frame->g_pack(qw/ -expand 1 -fill both /); $frame->new_ttk__label( -text => "CHOSEN:", )->g_grid( -column => 0, -row => 0, ); $frame->new_ttk__label( -textvariable => \$chosen, )->g_grid( -column => 1, -row => 0, ); #~ tk_optionMenu pathName varName value ?value value ...? Tkx::tk___optionMenu( "$frame.crit", \$chosen, @fail_crit ); #~ Tkx::widget->new( "$frame.crit" )->g_grid(-column => 2, -row => 0); Tkx::grid( "$frame.crit", -column => 2, -row => 0 ); } Tkx::i->interp->Eval(q{ttk::label .l2 -textvariable myVar; pack .l2}); Tkx::i->interp->Eval(q{tk_optionMenu .foo myVar Foo Bar Boo Spong Wibble}); Tkx::i->interp->Eval(q{pack .foo}); Tkx::MainLoop(); __END__ Tkx-1-0.0s-tkx-optionmenu.pl-21: winfo children . Tkx-2-0.0s-tkx-optionmenu.pl-21: ttk::frame .f Tkx-3-0.0s-tkx-optionmenu.pl-22: pack .f -expand 1 -fill both Tkx-4-0.0s-tkx-optionmenu.pl-24: winfo children .f Tkx-5-0.0s-tkx-optionmenu.pl-24: ttk::label .f.l -text CHOSEN: Tkx-6-0.0s-tkx-optionmenu.pl-24: grid .f.l -column 0 -row 0 Tkx-7-0.0s-tkx-optionmenu.pl-30: winfo children .f Tkx-8-0.0s-tkx-optionmenu.pl-30: ttk::label .f.l2 -textvariable SCALAR(0x99ae24) Tkx-9-0.0s-tkx-optionmenu.pl-30: grid .f.l2 -column 1 -row 0 Tkx-10-0.0s-tkx-optionmenu.pl-37: tk_optionMenu .f.crit SCALAR(0x99ae24) {1. Maximum Strain} {2. Maximum Stress} {3. Tsai-Hill} {4. Modified Tsai-Wu} {5. Hoffman} Tkx-11-0.0s-tkx-optionmenu.pl-44: grid .f.crit -column 2 -row 0