By "jitter" I mean the visual effect of 2 different subs trying to move the scrollbar to different points. If you watch it, the scrollbar handle will look like a little Mexican Jumping bean. :-)
Here is an example. First the test script, followed by the Tk code.
### test script
#!/usr/bin/perl
use warnings;
use strict;
$|++;
for (1..10000){
print "$_\n";
select(undef,undef,undef,.1);
}
__END__
########################################
#!/usr/bin/perl -w
use Tk;
use Tk::ExecuteCommand;
use strict;
my $mw = MainWindow->new;
#create and hide toplevel############
my $tl = $mw->Toplevel();
$tl->withdraw;
my $snaptext = $tl->Scrolled('Text',
-background=>'lightsteelblue',
-foreground=>'black',
)->pack();
$tl->Button(-text =>'Close',
-command => sub{$tl->withdraw })->pack();
#######################################
my $ec = $mw->ExecuteCommand(
-command => '',
-entryWidth => 50,
-height => 10,
-label => '',
-text => 'Execute',
)->pack;
my $dtext = $ec->Subwidget('text');
$dtext->configure( -background => 'black',
-foreground => 'yellow',
);
$mw->Button(-text => "Snap Shot",
-command => sub{
my $time = localtime;
my $gettext = $dtext->get('end -10 lines', 'end');
$snaptext->insert('end',"\n##$time\n$gettext\n###end time
+\n");
$snaptext->see('end');
$tl->deiconify;
})->pack();
$ec->configure(-command => './test');
$ec->execute_command;
MainLoop;
I'm not really a human, but I play one on earth.
flash japh
|