Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |
The QScrollBar widget provides a vertical or horizontal scroll bar. More...
#include <qscrollbar.h>
Inherits QWidget and QRangeControl.
A scroll bar allows the user to control a value within a program-definable range and gives users a visible indication of the current value of a range control.
Scroll bars include four separate controls:
QScrollBar has very few of its own functions; it mostly relies on QRangeControl. The most useful functions are setValue() to set the scroll bar directly to some value; addPage(), addLine(), subtractPage(), and subtractLine() to simulate the effects of clicking (useful for accelerator keys); setSteps() to define the values of pageStep() and lineStep(); and setRange() to set the minValue() and maxValue() of the scroll bar. QScrollBar has a convenience constructor with which you can set most of these properties.
Some GUI styles (for example, the Windows and Motif styles provided with Qt), also use the pageStep() value to calculate the size of the slider.
In addition to the access functions from QRangeControl, QScrollBar provides a comprehensive set of signals:
Signal | Emitted when |
---|---|
valueChanged() | the scroll bar's value has changed. The tracking() determines whether this signal is emitted during user interaction. |
sliderPressed() | the user starts to drag the slider. |
sliderMoved() | the user drags the slider. |
sliderReleased() | the user releases the slider. |
nextLine() | the scroll bar has moved one line down or right. Line is defined in QRangeControl. |
prevLine() | the scroll bar has moved one line up or left. |
nextPage() | the scroll bar has moved one page down or right. |
prevPage() | the scroll bar has moved one page up or left. |
QScrollBar only provides integer ranges. Note that although QScrollBar handles very large numbers, scroll bars on current screens cannot usefully control ranges above about 100,000 pixels. Beyond that, it becomes difficult for the user to control the scroll bar using either the keyboard or the mouse.
A scroll bar can be controlled by the keyboard, but it has a default focusPolicy() of NoFocus. Use setFocusPolicy() to enable keyboard focus. See keyPressEvent() for a list of key bindings.
If you need to add scroll bars to an interface, consider using the QScrollView class, which encapsulates the common uses for scroll bars.
See also QSlider, QSpinBox, QScrollView, GUI Design Handbook: Scroll Bar, and Basic Widgets.
The parent and name arguments are sent on to the QWidget constructor.
The orientation must be Qt::Vertical or Qt::Horizontal.
The parent and name arguments are sent on to the QWidget constructor.
If orientation is Vertical the scroll bar is vertical and if it is Horizontal the scroll bar is horizontal.
The parent and name arguments are sent on to the QWidget constructor.
Returns TRUE if the user has clicked the mouse on the slider and is currently dragging it; otherwise returns FALSE. See the "draggingSlider" property for details.
Reimplemented from QWidget.
Returns the line step. See the "lineStep" property for details.
Returns the scroll bar's maximum value. See the "maxValue" property for details.
Returns the scroll bar's minimum value. See the "minValue" property for details.
This signal is emitted when the scroll bar scrolls one line down or right.
This signal is emitted when the scroll bar scrolls one page down or right.
Returns the orientation of the scroll bar. See the "orientation" property for details.
Returns the page step. See the "pageStep" property for details.
This signal is emitted when the scroll bar scrolls one line up or left.
This signal is emitted when the scroll bar scrolls one page up or left.
Sets the line step. See the "lineStep" property for details.
Sets the scroll bar's maximum value. See the "maxValue" property for details.
Sets the scroll bar's minimum value. See the "minValue" property for details.
Sets the orientation of the scroll bar. See the "orientation" property for details.
Sets the page step. See the "pageStep" property for details.
Sets the background color to the mid color for Motif style scroll bars using palette p.
Reimplemented from QWidget.
Sets whether scroll bar tracking is enabled to enable. See the "tracking" property for details.
Sets the scroll bar's value. See the "value" property for details.
This signal is emitted when the slider is dragged by the user, with the new scroll bar value as an argument.
This signal is emitted even when tracking is turned off.
See also tracking, valueChanged(), nextLine(), prevLine(), nextPage(), and prevPage().
This signal is emitted when the user presses the slider with the mouse.
See also sliderStart().
This signal is emitted when the user releases the slider with the mouse.
Returns the pixel position where the scroll bar slider starts.
This is equivalent to sliderRect().y() for vertical scroll bars or sliderRect().x() for horizontal scroll bars.
Returns TRUE if scroll bar tracking is enabled; otherwise returns FALSE. See the "tracking" property for details.
Returns the scroll bar's value. See the "value" property for details.
This signal is emitted when the scroll bar value has changed, with the new scroll bar value as an argument.
This property holds whether the user has clicked the mouse on the slider and is currently dragging it.
Get this property's value with draggingSlider().
This property holds the line step.
When setting lineStep, the virtual stepChange() function will be called if the new line step is different from the previous setting.
See also setSteps(), QRangeControl::pageStep(), and setRange().
Set this property's value with setLineStep() and get this property's value with lineStep().
This property holds the scroll bar's maximum value.
When setting this property, the QScrollBar::minValue is adjusted if necessary to ensure that the range remains valid.
See also setRange().
Set this property's value with setMaxValue() and get this property's value with maxValue().
This property holds the scroll bar's minimum value.
When setting this property, the QScrollBar::maxValue is adjusted if necessary to ensure that the range remains valid.
See also setRange().
Set this property's value with setMinValue() and get this property's value with minValue().
This property holds the orientation of the scroll bar.
The orientation must be Qt::Vertical (the default) or Qt::Horizontal.
Set this property's value with setOrientation() and get this property's value with orientation().
This property holds the page step.
When setting pageStep, the virtual stepChange() function will be called if the new page step is different from the previous setting.
See also QRangeControl::setSteps(), lineStep, and setRange().
Set this property's value with setPageStep() and get this property's value with pageStep().
This property holds whether scroll bar tracking is enabled.
If tracking is enabled (the default), the scroll bar emits the valueChanged() signal while the slider is being dragged. If tracking is disabled, the scroll bar emits the valueChanged() signal only when the user releases the mouse button after moving the slider.
Set this property's value with setTracking() and get this property's value with tracking().
This property holds the scroll bar's value.
Set this property's value with setValue() and get this property's value with value().
See also QRangeControl::value() and prevValue().
This file is part of the Qt toolkit. Copyright © 1995-2003 Trolltech. All Rights Reserved.
Copyright © 2003 Trolltech | Trademarks | Qt version 3.2.0b2
|