#!/usr/bin/perl use strict; use Tk; my $mw = MainWindow->new(); my $txtvar; # have a separate scalar for each Entry widget $mw->Entry(-textvariable=>\$txtvar # this is the trick )->pack(); $mw->Button(-text=>"Print & Clear", -command=>sub{print $txtvar,$/; $txtvar=""} )->pack(); MainLoop; #### my %strings = qw/first one second two third three/; for my $name ( sort keys %strings ) { $mw->Label(-text => $name)->pack(); $mw->Entry(-textvariable => \$strings{$name})->pack(); } $mw->Button(-text=>"Print&Clear", -command=>sub{ for (sort keys %strings) { print "$_=$strings{$_} "; $strings{$_} = ""; } print $/; } )->pack();