QScrollBar - Vertical or horizontal scroll bar
#include <qscrollbar.h>
Inherits QRangeControl and QWidget.
Public Members
QScrollBar ( QWidget * parent, const char * name=0 )
QScrollBar ( Orientation, QWidget * parent, const char *
name=0 )
QScrollBar ( int minValue, int maxValue, int LineStep, int
PageStep, int value, Orientation, QWidget * parent,
const char * name=0 )
virtual void setOrientation ( Orientation )
Orientation orientation () const
virtual void setTracking ( bool enable )
bool tracking () const
bool draggingSlider () const
virtual void setPalette ( const QPalette & )
void setMinValue ( int )
void setMaxValue ( int )
void setLineStep ( int )
void setPageStep ( int )
Signals
void valueChanged ( int value )
void sliderPressed ()
void sliderMoved ( int value )
void sliderReleased ()
void nextLine ()
void prevLine ()
void nextPage ()
void prevPage ()
Protected Members
virtual void valueChange () (internal)
virtual void stepChange () (internal)
virtual void rangeChange () (internal)
int sliderStart () const
QRect sliderRect () const
Properties
Type Name READ WRITE Options
-------------------------------------------------------------------------
int minValue minValue setMinValue
int maxValue maxValue setMaxValue
int lineStep lineStep setLineStep
int pageStep pageStep setPageStep
int value value setValue
bool tracking tracking setTracking
bool draggingSlider draggingSlider
DESCRIPTION
The QScrollBar widget provides a vertical or horizontal
scroll bar.
A scroll bar allows the user to control a value within a
program-definable range, and to give the user visible
indication of the current value of a range control.
Scroll bars include four separate controls:
The line-up and line-down controls are little button with
which the user can move one line up or down. The
meaning of "line" is configurable. In editors and
list boxes it means one line of text, while an
image viewer it might mean 20 pixels.
The slider is the handle that indicates the current value
of the scroll bar, and which the user can drag to
change the value. This part of the scroll bar is
sometimes called the "thumb".
The page-up/down control is the area on which the slider
slides (the scroll bar's background). Clicking here
moves the scroll bar towards the click. The meaning
of page is also configurable - in editors and list
boxes it means as many lines as there is space for
in the widget.
QScrollBar has not much of an API of its own; 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 provided Windows and
Motif styles, also use the pageStep() value to calculate
the size of the slider.
In addition to the access functions from QRangeControl,
QScrollBar has a comprehensive set of signals:
valueChanged() - emitted when the scroll bar's value has
changed. The tracking() determines whether this
signal is emitted during interaction.
slider
sliderMoved() - emitted when the user drags the slider
sliderReleased() - emitted when the user releases the
slider
nextLine() - emitted when the scroll bar has moved one
line down/rightwards. Line is defined in
QRangeControl.
prevLine() - emitted when the scroll bar has moved one
line up/leftwards.
nextPage() - emitted when the scroll bar has moved one
page down/rightwards.
prevPage() - emitted when the scroll bar has moved one
page up/leftwards.
QScrollBar only offers integer ranges. Note that while
QScrollBar handles very large numbers, scroll bars on
today's 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 keyboard or
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 scrollbars to an interface, consider
using the QScrollView class which encapsulates the common
uses for scrollbars.
[Image Omitted]
[Image Omitted]
See also QSlider, QSpinBox, QScrollView and GUI Design
Handbook: Scroll Bar
MEMBER FUNCTION DOCUMENTATION
QScrollBar::QScrollBar ( Orientation orientation, QWidget *
parent, const char * name=0 )
Constructs a scroll bar.
The orientation must be QScrollBar::Vertical or
QScrollBar::Horizontal.
The parent and name arguments are sent to the QWidget
QScrollBar::QScrollBar ( QWidget * parent, const char * name=0 )
Constructs a vertical scroll bar.
The parent and name arguments are sent to the QWidget
constructor.
QScrollBar::QScrollBar ( int minValue, int maxValue, int
lineStep, int pageStep, int value, Orientation
orientation, QWidget * parent, const char * name=0 )
Constructs a scroll bar.
Arguments:
minValue is the minimum scroll bar value.
maxValue is the maximum scroll bar value.
lineStep is the line step value.
pageStep is the page step value. It is also used to
calculate the size of the slider.
value is the initial value.
orientation must be QScrollBar::Vertical or
QScrollBar::Horizontal. The parent and name
arguments are sent to the QWidget constructor.
bool QScrollBar::draggingSlider () const
Returns TRUE if the user has clicked the mouse on the
slider and is currently dragging it, or FALSE if not.
void QScrollBar::keyPressEvent ( QKeyEvent * e ) [virtual
protected]
Reimplemented for internal reasons; the API is not
affected.
Reimplemented from QWidget.
int QScrollBar::lineStep () const
Reimplemented for internal reasons; the API is not
affected.
int QScrollBar::maxValue () const
Reimplemented for internal reasons; the API is not
affected.
int QScrollBar::minValue () const
Reimplemented for internal reasons; the API is not
affected.
protected]
Reimplemented for internal reasons; the API is not
affected.
Reimplemented from QWidget.
void QScrollBar::mousePressEvent ( QMouseEvent * e ) [virtual
protected]
Reimplemented for internal reasons; the API is not
affected.
Reimplemented from QWidget.
void QScrollBar::mouseReleaseEvent ( QMouseEvent * e ) [virtual
protected]
Reimplemented for internal reasons; the API is not
affected.
Reimplemented from QWidget.
void QScrollBar::nextLine () [signal]
This signal is emitted when the scroll bar scrolls one
line down/right.
void QScrollBar::nextPage () [signal]
This signal is emitted when the scroll bar scrolls one
page down/right.
Orientation QScrollBar::orientation () const
Returns the orientation of the scroll bar;
QScrollBar::Vertical or QScrollBar::Horizontal.
See also setOrientation().
int QScrollBar::pageStep () const
Reimplemented for internal reasons; the API is not
affected.
void QScrollBar::paintEvent ( QPaintEvent * ) [virtual protected]
Reimplemented for internal reasons; the API is not
affected.
Reimplemented from QWidget.
void QScrollBar::prevLine () [signal]
This signal is emitted when the scroll bar scrolls one
line up/left.
void QScrollBar::prevPage () [signal]
This signal is emitted when the scroll bar scrolls one
page up/left.
protected]
Reimplemented for internal reasons; the API is not
affected.
Reimplemented from QWidget.
void QScrollBar::setLineStep ( int i )
Sets the line step to i.
Calls the virtual stepChange() function if the new line
step is different from the previous setting.
See also lineStep(), QRangeControl::setSteps(),
setPageStep() and setRange().
void QScrollBar::setMaxValue ( int i )
A convenience function which just calls setRange(
minValue(), i )
See also setRange().
void QScrollBar::setMinValue ( int i )
A convenience function which just calls setRange( i,
maxValue() )
See also setRange().
void QScrollBar::setOrientation ( Orientation orientation )
[virtual]
Sets the scroll bar orientation. The orientation must be
QScrollBar::Vertical or QScrollBar::Horizontal.
See also orientation().
void QScrollBar::setPageStep ( int i )
Sets the page step to i.
Calls the virtual stepChange() function if the new page
step is different from the previous setting.
See also pageStep(), QRangeControl::setSteps(),
setLineStep() and setRange().
void QScrollBar::setPalette ( const QPalette & p ) [virtual]
Reimplements the virtual function QWidget::setPalette().
Sets the background color to the mid color for Motif style
scroll bars.
void QScrollBar::setTracking ( bool enable ) [virtual]
Enables scroll bar tracking if enable is TRUE, or disables
tracking if enable is FALSE.
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.
See also tracking().
void QScrollBar::setValue ( int i )
Reimplemented for internal reasons; the API is not
affected.
QSize QScrollBar::sizeHint () const [virtual]
Reimplemented for internal reasons; the API is not
affected.
Reimplemented from QWidget.
QSizePolicy QScrollBar::sizePolicy () const [virtual]
Reimplemented for internal reasons; the API is not
affected.
Reimplemented from QWidget.
void QScrollBar::sliderMoved ( int value ) [signal]
This signal is emitted when the slider is moved 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().
void QScrollBar::sliderPressed () [signal]
This signal is emitted when the user presses the slider
with the mouse.
QRect QScrollBar::sliderRect () const [protected]
Returns the scroll bar slider rectangle.
See also sliderStart().
void QScrollBar::sliderReleased () [signal]
This signal is emitted when the user releases the slider
with the mouse.
int QScrollBar::sliderStart () const [protected]
Returns the pixel position where the scroll bar slider
starts.
It is equivalent to sliderRect().y() for vertical scroll
bars or sliderRect().x() for horizontal scroll bars.
Reimplemented for internal reasons; the API is not
affected.
Reimplemented from QWidget.
bool QScrollBar::tracking () const
Returns TRUE if tracking is enabled, or FALSE if tracking
is disabled.
Tracking is initially enabled.
See also setTracking().
int QScrollBar::value () const
Reimplemented for internal reasons; the API is not
affected.
void QScrollBar::valueChanged ( int value ) [signal]
This signal is emitted when the scroll bar value has
changed, with the new scroll bar value as an argument.
void QScrollBar::wheelEvent ( QWheelEvent * e ) [virtual
protected]
Reimplemented for internal reasons; the API is not
affected.
Reimplemented from QWidget.
void QScrollBar::rangeChange () [virtual protected]
For internal use only.
Reimplemented from QRangeControl.
void QScrollBar::stepChange () [virtual protected]
For internal use only.
Reimplemented from QRangeControl.
void QScrollBar::valueChange () [virtual protected]
For internal use only.
Reimplemented from QRangeControl.
SEE ALSO
http://doc.trolltech.com/qscrollbar.html
http://www.trolltech.com/faq/tech.html
COPYRIGHT
Copyright 1992-2001 Trolltech AS,
http://www.trolltech.com. See the license file included
in the distribution for a complete license statement.
Generated automatically from the source code.
BUGS
If you find a bug in Qt, please report it as described in
http://doc.trolltech.com/bughowto.html. Good bug reports
make our job much simpler. Thank you.
In case of content or formattting problems with this
manual page, please report them to qt-bugs@trolltech.com.
Please include the name of the manual page
(qscrollbar.3qt) and the Qt version (2.3.1).
Man(1) output converted with
man2html