use strict; use warnings; use Tk; my $textboxrow = 1; my $fieldbuttonrow = 2; my @be; my $mw = tkinit; $mw -> geometry("400x200"); my $button = $mw->Button(-text => 'Add Field', -command => \&addtextbox); my $button2 = $mw->Button(-text => 'Print texts',-command => \&printtexts); addtextbox(); MainLoop(); sub addtextbox{ my $be = $mw->BrowseEntry(-label=>"Field"); $be->insert('end', $_) for qw/dog cat mouse/; push @be, $be; $be ->grid(-row=>$textboxrow++, -column=>2); $button ->grid(-row=>$fieldbuttonrow++,-column=>2,-columnspan=>2); $button2->grid(-row=>$fieldbuttonrow ,-column=>2,-columnspan=>1); } sub printtexts{ print join ':', map { $_->Subwidget('entry')->get } @be; }