Qt Reference Documentation

- Qt 4.8
- ALL VERSIONS

- A
- A
- A
- Print

# QSlider Class Reference

The QSlider widget provides a vertical or horizontal slider. More...

     #include <QSlider>

Inherits: QAbstractSlider.

- List of all members, including inherited members
- Qt 3 support members

## Public Types

enum | TickPosition { NoTicks, TicksBothSides, TicksAbove, TicksBelow, TicksLeft, TicksRight }

## Properties

- tickInterval : int
- tickPosition : TickPosition

- 11 properties inherited from QAbstractSlider
- 58 properties inherited from QWidget
- 1 property inherited from QObject

## Public Functions

| QSlider ( QWidget * parent = 0 )
| QSlider ( Qt::Orientation orientation, QWidget * parent = 0 )
| ~QSlider ()
void | setTickInterval ( int ti )
void | setTickPosition ( TickPosition position )
int | tickInterval () const
TickPosition | tickPosition () const

## Reimplemented Public Functions

virtual bool | event ( QEvent * event )
virtual QSize | minimumSizeHint () const
virtual QSize | sizeHint () const

- 22 public functions inherited from QAbstractSlider
- 221 public functions inherited from QWidget
- 29 public functions inherited from QObject
- 13 public functions inherited from QPaintDevice

## Protected Functions

void | initStyleOption ( QStyleOptionSlider * option ) const

## Reimplemented Protected Functions

virtual void | mouseMoveEvent ( QMouseEvent * ev )
virtual void | mousePressEvent ( QMouseEvent * ev )
virtual void | mouseReleaseEvent ( QMouseEvent * ev )
virtual void | paintEvent ( QPaintEvent * ev )

- 8 protected functions inherited from QAbstractSlider
- 37 protected functions inherited from QWidget
- 8 protected functions inherited from QObject
- 1 protected function inherited from QPaintDevice

### Additional Inherited Members

- 2 public slots inherited from QAbstractSlider
- 19 public slots inherited from QWidget
- 1 public slot inherited from QObject
- 6 signals inherited from QAbstractSlider
- 1 signal inherited from QWidget
- 1 signal inherited from QObject
- 4 static public members inherited from QWidget
- 7 static public members inherited from QObject
- 1 protected slot inherited from QWidget

## Detailed Description

The QSlider widget provides a vertical or horizontal slider.

The slider is the classic widget for controlling a bounded value. It lets the user move a slider handle along a horizontal or vertical groove and translates the handle's position into an integer value within the legal range.

QSlider has very few of its own functions; most of the functionality is in QAbstractSlider. The most useful functions are setValue() to set the slider directly to some value; triggerAction() to simulate the effects of clicking (useful for shortcut keys); setSingleStep(), setPageStep() to set the steps; and setMinimum() and setMaximum() to define the range of the scroll bar.

QSlider provides methods for controlling tickmarks. You can use setTickPosition() to indicate where you want the tickmarks to be, setTickInterval() to indicate how many of them you want. the currently set tick position and interval can be queried using the tickPosition() and tickInterval() functions, respectively.

QSlider inherits a comprehensive set of signals:

Signal | Description
--- | ---
valueChanged() | Emitted when the slider's value has changed. The tracking() determines whether this signal is emitted during user interaction.
sliderPressed() | Emitted when the user starts to drag the slider.
sliderMoved() | Emitted when the user drags the slider.
sliderReleased() | Emitted when the user releases the slider.

QSlider only provides integer ranges. Note that although QSlider handles very large numbers, it becomes difficult for users to use a slider accurately for very large ranges.

A slider accepts focus on Tab and provides both a mouse wheel and a keyboard interface. The keyboard interface is the following:

- Left/Right move a horizontal slider by one single step.
- Up/Down move a vertical slider by one single step.
- PageUp moves up one page.
- PageDown moves down one page.
- Home moves to the start (mininum).
- End moves to the end (maximum).

| A slider shown in the Macintosh widget style.
| A slider shown in the Windows XP widget style.
| A slider shown in the Plastique widget style.

See also QScrollBar, QSpinBox, QDial, GUI Design Handbook: Slider, and Sliders Example.

## Member Type Documentation

### enum QSlider::TickPosition

This enum specifies where the tick marks are to be drawn relative to the slider's groove and the handle the user moves.

Constant | Value | Description
--- | --- | ---
`QSlider::NoTicks` | `0` | Do not draw any tick marks.
`QSlider::TicksBothSides` | `3` | Draw tick marks on both sides of the groove.
`QSlider::TicksAbove` | `1` | Draw tick marks above the (horizontal) slider
`QSlider::TicksBelow` | `2` | Draw tick marks below the (horizontal) slider
`QSlider::TicksLeft` | `TicksAbove` | Draw tick marks to the left of the (vertical) slider
`QSlider::TicksRight` | `TicksBelow` | Draw tick marks to the right of the (vertical) slider

## Property Documentation

### tickInterval : int

This property holds the interval between tickmarks.

This is a value interval, not a pixel interval. If it is 0, the slider will choose between singleStep() and pageStep().

The default value is 0.

Access functions:

int | tickInterval () const
void | setTickInterval ( int ti )

See also tickPosition, lineStep(), and pageStep().

### tickPosition : TickPosition

This property holds the tickmark position for this slider.

The valid values are described by the QSlider::TickPosition enum.

The default value is QSlider::NoTicks.

Access functions:

TickPosition | tickPosition () const
void | setTickPosition ( TickPosition position )

See also tickInterval.

## Member Function Documentation

### QSlider::QSlider ( QWidget * parent = 0 )

Constructs a vertical slider with the given parent.

### QSlider::QSlider ( Qt::Orientation orientation, QWidget * parent = 0 )

Constructs a slider with the given parent. The orientation parameter determines whether the slider is horizontal or vertical; the valid values are Qt::Vertical and Qt::Horizontal.

### QSlider::~QSlider ()

Destroys this slider.

### bool QSlider::event ( QEvent * event )`[virtual]`

Reimplemented from QObject::event().

### void QSlider::initStyleOption ( QStyleOptionSlider * option ) const`[protected]`

Initialize option with the values from this QSlider. This method is useful for subclasses when they need a QStyleOptionSlider, but don't want to fill in all the information themselves.

See also QStyleOption::initFrom().

### QSize QSlider::minimumSizeHint () const`[virtual]`

Reimplemented from QWidget::minimumSizeHint().

### void QSlider::mouseMoveEvent ( QMouseEvent * ev )`[virtual protected]`

Reimplemented from QWidget::mouseMoveEvent().

### void QSlider::mousePressEvent ( QMouseEvent * ev )`[virtual protected]`

Reimplemented from QWidget::mousePressEvent().

### void QSlider::mouseReleaseEvent ( QMouseEvent * ev )`[virtual protected]`

Reimplemented from QWidget::mouseReleaseEvent().

### void QSlider::paintEvent ( QPaintEvent * ev )`[virtual protected]`

Reimplemented from QWidget::paintEvent().

### QSize QSlider::sizeHint () const`[virtual]`

Reimplemented from QWidget::sizeHint().