hwtk::scale
Create and manipulate a scale widget.
Format
hwtk::scale - pathName ?option value? …
Description
A hwtk::scale widget is typically used to control the numeric value of a linked variable that varies uniformly over some range. A scale displays a slider that can be moved along over a trough, with the relative position of the slider over the trough indicating
Standard Options
- -clientdata
- Database name: clientData
- -cursor
- Database name: cursor
- -help
- Database name: help
- -helpcommand
- Database name: helpcommand
- -takefocus
- Database name: takeFocus
Widget-Specific Options
- -command
- Database name: command
- -from
- Database name: from
- -length
- Database name: length
- -orient
- Database name: orient
- -to
- Database name: to
- -value
- Database name: value
- -variable
- Database name: variable
Widget Command
- pathName configure ?option? ?value option value …?
- Query or modify the configuration options of the widget. If one or more option-value pairs are specified, then the command modifies the given widget option(s) to have the given value(s); in this case the command returns an empty string. If option is specified with no value, then the command returns a list describing the named option: the elements of the list are the option name, database name, database class, default value, and current value. If no option is specified, returns a list describing all of the available options for pathName.
- pathName cget option
- Returns the current value of the configuration option given by option.
- pathName identify element x y
- Returns the name of the element under the point given by x and y, or an empty string if the point does not lie within any element. x and y are pixel coordinates relative to the widget. Some widgets accept other identify subcommands.
- pathName instate statespec ?script?
- Test the widget’s state. If script is not specified, returns 1 if the
widget state matches statespec and 0 otherwise. If script is specified,
equivalent to
if{[pathNameinstatestateSpec]}script
- pathName state ?stateSpec?
- Modify or inquire widget state. If stateSpec is
present, sets the widget state: for each flag in
stateSpec, sets the corresponding flag or clears it
if prefixed by an exclamation point. Returns a new state spec indicating
which flags were changed:
will restore pathName to the original state. If stateSpec is not specified, returns a list of the currently-enabled state flags.setchanges[pathNamestatespec]
pathNamestate$changes
- pathName coords ?value?
- Get the coordinates corresponding to value, or the coordinates corresponding to the current value of the -value option if value is omitted.
- pathName get ?xy?
- Get the current value of the -value option, or the value corresponding to the coordinates x,y if they are specified. X and y are pixel coordinates relative to the scale widget origin.
- pathName set ?value?
- Set the value of the widget (i.e. the -value option) to value. The value will be clipped to the range given by the -from and -to options. Note that setting the linked variable (i.e. the variable named in the -variable option) does not cause such clipping.
Example
proc ScaleValues {w idx} {
set c {lindex "Red Orange Yellow green_noitalic Blue Violet" [tcl::mathfunc::int $idx]]
$w configure -foreground $c -text "Color:: $c"
}
hwtk::dialog .dlg -title "::hwtk::scale"
set recess [.dlg recess]
label $recess.label
hwtk::scale $recess.scale -from 0 -to 5 -command [list ScaleValues $recess.label]
pack $recess.label $recess.scale
.dlg post