Tk::ProgressBar(3)

NAME
Tk::ProgressBar - A graphical progress bar

SYNOPSIS
    use Tk::ProgressBar;

    $progress = $parent->ProgressBar(
        -width => 200,
        -length => 20,
        -anchor => 's',
        -from => 0,
        -to => 100,
        -blocks => 10,
        -colors => [0, 'green', 50, 'yellow' , 80, 'red'],
        -variable => \$percent_done
    );

    $progress->value($position);

DESCRIPTION
Tk::ProgressBar provides a widget which will show a graphical representation of a value, given maximum and minimum reference values.

STANDARD OPTIONS
The following standard widget options are supported:

-borderwidth
-highlightthickness
    Defaults to 0.

-padx
    Defaults to 0.

-pady
    Defaults to 0.

-relief
    Defaults to "sunken"

-troughcolor
    The color to be used for the background (trough) of the progress bar. Default is to use grey55.

WIDGET-SPECIFIC OPTIONS

-anchor
    This can be used to position the start point of the bar. Default is 'w' (horizontal bar starting from the left). A vertical bar can be configured by using either 's' or 'n'.

-blocks
    This controls the number of blocks to be used to construct the progress bar. The default is to break the bar into 10 blocks.

-colors
    Controls the colors to be used for different positions of the progress bar. The colors should be supplied as a reference to an array containing pairs of positions and colors.

      -colors => [ 0, 'green', 50, 'red' ]

    means that for the range 0 to 50 the progress bar should be green and for higher values it should be red.

-from
    This sets the lower limit of the progress bar. If the bar is set to a value below the lower limt no bar will be displayed. Defaults to 0. See the "-to" description for more information.

-gap
    This is the spacing (in pixels) between each block. Defaults to 1. Use 0 to get a continuous bar.

-length
    Specifies the desired long dimension of the ProgressBar in screen units (i.e. any of the forms acceptable to Tk_GetPixels). For vertical ProgressBars this is the ProgressBars height; for horizontal scales it is the ProgressBars width. The default length is calculated from the values of "-padx", "-borderwidth", "-highlightthickness" and the difference between "-from" and "-to".

-resolution
    A real value specifying the resolution for the scale. If this value is greater than zero then the scale's value will always be rounded to an even multiple of this value, as will tick marks and the endpoints of the scale. If the value is less than zero then no rounding occurs. Defaults to 1 (i.e., the value will be integral).

-to This sets the upper limit of the progress bar. If a value is specified (for example, using the "value" method) that lies above this value the full progress bar will be displayed. Defaults to 100.

-variable
    Specifies the reference to a scalar variable to link to the ProgressBar. Whenever the value of the variable changes, the ProgressBar will upate to reflect this value. (See also the value method below.)

-value
    The can be used to set the current position of the progress bar when used in conjunction with the standard "configure". It is usually recommended to use the value method instead.

-width
    Specifies the desired narrow dimension of the ProgressBar in screen units (i.e. any of the forms acceptable to Tk_GetPixels). For vertical ProgressBars this is the ProgressBars width; for horizontal bars this is the ProgressBars height. The default width is derived from the values of "-borderwidth" and "-pady" and "-highlightthickness".

WIDGET METHODS

$ProgressBar->value(?value?)
    If value is omitted, returns the current value of the ProgressBar. If value is given, the value of the ProgressBar is set. If $value is given but undefined the value of the option -from is used.

AUTHOR
Graham Barr <gbarr@pobox.com>

COPYRIGHT
Copyright (c) 1997-1998 Graham Barr. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.