Tk::ProgressBar(3)

Okay bestie, welcome to the Tk::ProgressBar(3) page from perl/Tk Documentation β€” it’s literally the manual for a graphical progress bar, and it’s giving useful-widget main character energy. We’re covering every option, default, method, author line, and license crumb. No skipping. Periodt. πŸ’…


✨ NAME ✨

Tk::ProgressBar β€” a graphical progress bar. That’s the name, that’s the vibe, it does exactly what it says. πŸŽ€

πŸš€ SYNOPSIS πŸš€

use Tk::ProgressBar;

$progress = $parent->ProgressBar(
    -width => 20,
    -length => 200,
    -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. Basically it’s the glow-up your value deserves: you give it a range, it gives you the visual. Iconic behavior. ✨

πŸŽ€ STANDARD OPTIONS πŸŽ€

The following standard widget options are supported:

  • -borderwidth β€” supported standard widget option.
  • -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. Color-coded slay. 🌈

  • -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 update to reflect this value. (See also the value method below.)
  • -value β€” this 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> β€” yes, the author, bestie. We love a credited icon. 🫢

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.


That’s the whole Tk::ProgressBar(3) page, bestie β€” from source/version Tk804.036, dated 2025-07-31. Go make a progress bar that slays. πŸ’–βœ¨

πŸ“¦ where this page comes from