in reply to Perl TK
#progress bar that monitors a compile, #by counting .o's periodically use Tk; sub tick; $total_objects = 303; $progressbar_width = 2*$total_objects; $progressbar_height = 50; $timer_interval=10; #in seconds $MW = MainWindow->new; $MW->bind('<Control-c>' => \&exit); $MW->bind('<Control-q>' => \&exit); $canvas1 = $MW->Canvas( '-width' => $progressbar_width, -height => $progressbar_height, -background => 'black' ) -> pack; $newval = 10; $start = $MW->Button( -text => 'Start', -command => sub {tick}, ); $start->pack(-side => 'left', -fill => 'both', -expand => 'yes'); sub tick { # Update the counter every 5 seconds $MW->after($timer_interval * 1000, \&tick); $num_objs = @objects = glob("\\as900\\code\\build\\*.o"); print "\n$num_objs out of $total_objects built so far..."; $newval = ($num_objs / $total_objects)*$progressbar_width; $canvas1->create ('rectangle','0','0',$newval,$progressbar_height, +-fill=>'red'); } MainLoop;
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: Perl TK
by HamNRye (Monk) on May 10, 2001 at 21:28 UTC | |
by JojoLinkyBob (Scribe) on May 11, 2001 at 00:37 UTC |