#use strict; use warnings; use Tkx; Tkx::package_require("Tktable"); my $mw = Tkx::widget->new("."); %hash = ( # data to display '0,0' => 'Goodby', '1,1' => 'cruel', '2,2' => 'world', ); %hash2 = ( # data to display '0,0' => 'Goodby', '1,1' => 'cruel', '2,2' => 'world', ); my $t = $mw->new_table ( -rows => 5, -cols => 3, -cache => 1, -variable => \%hash, ); $t->g_pack(-fill => 'both', -expand => 1); $b=$mw->new_button (-text=>"Search", -command=>sub {Search()}, ); $b->g_pack(); $b2=$mw->new_button (-text=>"Text", -command=>sub {Text()}, ); $b2->g_pack(); sub Search() {print("You rang?\n"); %hash = ( # data to display '0,0' => 'Hello', '1,1' => 'Great', '2,2' => 'world', ); }; sub Text() {print("Yes Master?\n"); %hash2 = ( # data to display '0,0' => 'Hello', '1,1' => 'Great', '2,2' => 'world', ); }; Tkx::MainLoop(); use Data::Dump; dd \%hash; use Data::Dump; dd \%hash2; #### D:\DATA\HOME\Perl>TableTest.pl Yes Master? You rang? { # tied Tcl::Var active => "", } { "0,0" => "Hello", "1,1" => "Great", "2,2" => "world" } D:\DATA\HOME\Perl>TableTest.pl Yes Master? { # tied Tcl::Var "0,0" => "Goodby", "1,1" => "cruel", "2,2" => "world", "active" => "", } { "0,0" => "Hello", "1,1" => "Great", "2,2" => "world" } D:\DATA\HOME\Perl>