Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | # ProgressBar - display various progress bars. |
2 | ||
3 | use strict; | |
4 | use Tk; | |
5 | use Tk::ProgressBar; | |
6 | use Tk::Scale; | |
7 | ||
8 | my $mw = MainWindow->new; | |
9 | ||
10 | my $status_var = 0; | |
11 | ||
12 | my($fromv,$tov) = (0,100); | |
13 | foreach my $loop (0..1) { | |
14 | my $res = 0; | |
15 | my $blks = 10; | |
16 | my @p = qw(top bottom left right); | |
17 | foreach my $dir (qw(n s w e)) { | |
18 | $mw->ProgressBar( | |
19 | -borderwidth => 2, | |
20 | -relief => 'sunken', | |
21 | -width => 20, | |
22 | -padx => 2, | |
23 | -pady => 2, | |
24 | -variable => \$status_var, | |
25 | -colors => [0 => 'green', 50 => 'yellow' , 80 => 'red'], | |
26 | -resolution => $res, | |
27 | -blocks => $blks, | |
28 | -anchor => $dir, | |
29 | -from => $fromv, | |
30 | -to => $tov | |
31 | )->pack( | |
32 | -padx => 10, | |
33 | -pady => 10, | |
34 | -side => pop(@p), | |
35 | -fill => 'both', | |
36 | -expand => 1 | |
37 | ); | |
38 | $blks = abs($blks - ($res * 2)); | |
39 | $res = abs(5 - $res); | |
40 | } | |
41 | ($fromv,$tov) = ($tov,$fromv); | |
42 | } | |
43 | ||
44 | $mw->Scale(-from => 0, -to => 100, -variable => \$status_var)->pack; | |
45 | ||
46 | MainLoop; |