- NAME
- ttk::scrollbar — Control the viewport of a scrollable
widget
- SYNOPSIS
- DESCRIPTION
- STANDARD OPTIONS
- -class, undefined,
undefined
- -cursor, cursor,
Cursor
- -style, style, Style
- -takefocus, takeFocus,
TakeFocus
- WIDGET-SPECIFIC OPTIONS
- -command, command, Command
- -orient, orient, Orient
- WIDGET
COMMAND
- pathName get
- pathName set first last
- INTERNAL COMMANDS
- pathName delta deltaX deltaY
- pathName fraction x y
- SCROLLING COMMANDS
- prefix moveto fraction
- prefix scroll number
pages
- prefix scroll number
units
- WIDGET
STATES
- EXAMPLE
- STYLING OPTIONS
- SEE
ALSO
- KEYWORDS
ttk::scrollbar — Control the viewport of a scrollable widget
ttk::scrollbar pathName ?options...?
ttk::scrollbar widgets are typically linked to an associated
window that displays a document of some sort, such as a file being
edited or a drawing. A scrollbar displays a thumb in the
middle portion of the scrollbar, whose position and size provides
information about the portion of the document visible in the
associated window. The thumb may be dragged by the user to control
the visible region. Depending on the theme, two or more arrow
buttons may also be present; these are used to scroll the visible
region in discrete units.
- -class, undefined,
undefined
- -cursor, cursor,
Cursor
- -style, style,
Style
- -takefocus, takeFocus,
TakeFocus
- Command-Line Name: -command
- Database Name: command
- Database Class: Command
- A Tcl script prefix to evaluate to change the view in the
widget associated with the scrollbar. Additional arguments are
appended to the value of this option, as described in SCROLLING COMMANDS below, whenever the user requests
a view change by manipulating the scrollbar.
This option typically consists of a two-element list, containing
the name of a scrollable widget followed by either xview
(for horizontal scrollbars) or yview (for vertical
scrollbars).
- Command-Line Name: -orient
- Database Name: orient
- Database Class: Orient
- One of horizontal or vertical. Specifies the
orientation of the scrollbar.
In addition to the standard cget, configure,
identify element, instate, state and
style commands (see
ttk::widget),
scrollbar widgets support the following additional commands:
- pathName get
- Returns the scrollbar settings in the form of a list whose
elements are the arguments to the most recent set widget
command.
- pathName set first
last
- This command is normally invoked by the scrollbar's associated
widget from an -xscrollcommand or -yscrollcommand
callback. Specifies the visible range to be displayed. first
and last are real fractions between 0 and 1.
The following widget commands are used internally by the
TScrollbar widget class bindings.
- pathName delta deltaX
deltaY
- Returns a real number indicating the fractional change in the
scrollbar setting that corresponds to a given change in thumb
position. For example, if the scrollbar is horizontal, the result
indicates how much the scrollbar setting must change to move the
thumb deltaX pixels to the right (deltaY is ignored
in this case). If the scrollbar is vertical, the result indicates
how much the scrollbar setting must change to move the thumb
deltaY pixels down. The arguments and the result may be zero
or negative.
- pathName fraction x
y
- Returns a real number between 0 and 1 indicating where the
point given by x and y lies in the trough area of the
scrollbar, where 0.0 corresponds to the top or left of the trough
and 1.0 corresponds to the bottom or right. X and y
are pixel coordinates relative to the scrollbar widget. If x
and y refer to a point outside the trough, the closest point
in the trough is used.
When the user interacts with the scrollbar, for example by dragging
the thumb, the scrollbar notifies the associated widget that it
must change its view. The scrollbar makes the notification by
evaluating a Tcl command generated from the scrollbar's
-command option. The command may take any of the following
forms. In each case, prefix is the contents of the
-command option, which usually has a form like .t
yview
- prefix moveto
fraction
- Fraction is a real number between 0 and 1. The widget
should adjust its view so that the point given by fraction
appears at the beginning of the widget. If fraction is 0 it
refers to the beginning of the document. 1.0 refers to the end of
the document, 0.333 refers to a point one-third of the way through
the document, and so on.
- prefix scroll
number pages
- The widget should adjust its view by number pages. It is
up to the widget to define the meaning of a page; typically it is
slightly less than what fits in the window, so that there is a
slight overlap between the old and new views. Number is
either 1, which means the next page should become visible, or -1,
which means that the previous page should become visible.
- prefix scroll
number units
- The widget should adjust its view by number units. The
units are defined in whatever way makes sense for the widget, such
as characters or lines in a text widget. Number is either 1,
which means one unit should scroll off the top or left of the
window, or -1, which means that one unit should scroll off the
bottom or right of the window.
The scrollbar automatically sets the disabled state bit.
when the entire range is visible (range is 0.0 to 1.0), and clears
it otherwise. It also sets the active and pressed
state flags of individual elements, based on the position and state
of the mouse pointer.
set f [frame .f]
ttk::scrollbar $f.hsb -orient horizontal -command [list $f.t xview]
ttk::scrollbar $f.vsb -orient vertical -command [list $f.t yview]
text $f.t -xscrollcommand [list $f.hsb set] -yscrollcommand [list $f.vsb set]
grid $f.t -row 0 -column 0 -sticky nsew
grid $f.vsb -row 0 -column 1 -sticky nsew
grid $f.hsb -row 1 -column 0 -sticky nsew
grid columnconfigure $f 0 -weight 1
grid rowconfigure $f 0 -weight 1
pack $f
The class name for a ttk::scrollbar is TScrollbar.
Dynamic states: active, disabled.
TScrollbar (or more specifically
Vertical.TScrollbar and Horizontal.TScrollbar)
styling options that are configurable with ttk::style are:
-arrowcolor color
-arrowsize amount
-background color
-bordercolor color
-darkcolor color (color of the dark part of the 3D
relief)
-foreground color
-gripsize size (number of screen units)
-lightcolor color (color of the light part of the 3D
relief)
-troughcolor color
Some options are only available for specific themes.
See the ttk::style
manual page for information on how to configure ttk styles.
ttk::widget,
scrollbar
scrollbar, widget
Copyright © 1994-1996 Sun Microsystems, Inc.
Copyright © 2004 Joe English