#!/usr/bin/perl use strict; use warnings; use Tk; use Tk::ProgressBar; my $mw = MainWindow->new(-title => 'ProgressBar example'); my $percent_done = ''; my $progress = $mw->ProgressBar( -width => 30, -from => 0, -to => 100, -blocks => 50, -colors => [0, 'red', 50, 'white' , 80, 'blue'], -variable => \$percent_done )->pack(-fill => 'x'); $mw->Button(-text => 'Go!', -command=> sub { foreach (my $i = 0; $i < 1000; ++$i) { $percent_done = $i/10; print "$i\n"; $mw->update; } })->pack(-side => 'bottom'); MainLoop;