use strict; use warnings; use Tk; my $mw = MainWindow->new(); my $itemhref = build_widgets($mw); $mw->MainLoop(); exit(0); sub build_widgets { my $toplevel = shift or die('Missing toplevel widget'); my $frame = $toplevel->Frame()->pack; my $name = $frame->Entry( )->pack; my $alter = $frame->Entry( )->pack; my $button = $frame->Button( -text => "Ausgabe", #-command => \&ausgabe, )->pack; my %map = ( toplevel => $toplevel, frame => $frame, name => $name, alter => $alter, button => $button, ); $button->configure(-command => sub{ ausgabe(\%map); return 1; }); return \%map; } # /build_widgets sub ausgabe { my $itemhref = shift or die('Missing widget href'); print $itemhref->{name}->get()." ". $itemhref->{alter}->get()."\n"; } # /ausgabe