use Tk; use strict; use warnings; my $mw = MainWindow->new(); #This creates the widget and place it: my $Entry2 = $mw->Entry( -relief => "sunken" ); #$Entry2->place( -x => 88, -y => 33, -height => 16, -width => 120); $Entry2->pack(-side=>'left'); $Entry2->focus(); # And I have a button that calls the sub that does the trick: my $Button3 = $mw->Button( -text => "Cadastrar", -relief => "raised", -command => \&add ); #$Button3->place( -x => 218, -y => 33, -height => 16, -width => 56); $Button3->pack(-side=>'right'); # The above parts works as expected, my problem lies below #(notice that the snippet below is, obviously, after the MainLoop): MainLoop(); sub add { my $name = $Entry2->get(); print "name=$name\n"; #my $file = "data.dat"; # #open(CLIST, "+>>$file"); #flock(CLIST,2); #print CLIST $name."\n"; #flock(CLIST,8); #close($file); }