Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

QSlider Class Reference
[QtGui module]

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

 #include <QSlider>

Inherits QAbstractSlider.


Public Types

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

Properties


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

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 )

Additional Inherited Members


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:

SignalDescription
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).

Screenshot of a Macintosh sliderA slider shown in the Macintosh widget style.
Screenshot of a Windows XP sliderA slider shown in the Windows XP widget style.
Screenshot of a Plastique sliderA 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.

ConstantValueDescription
QSlider::NoTicks0Do not draw any tick marks.
QSlider::TicksBothSides3Draw tick marks on both sides of the groove.
QSlider::TicksAbove1Draw tick marks above the (horizontal) slider
QSlider::TicksBelow2Draw tick marks below the (horizontal) slider
QSlider::TicksLeftTicksAboveDraw tick marks to the left of the (vertical) slider
QSlider::TicksRightTicksBelowDraw 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 lineStep() 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().

Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 94
  2. Apercevoir la troisième dimension ou l'utilisation multithreadée d'OpenGL dans Qt, un article des Qt Quarterly traduit par Guillaume Belz 0
  3. Les développeurs ignorent-ils trop les failles découvertes dans leur code ? Prenez-vous en compte les remarques des autres ? 17
  4. Pourquoi les programmeurs sont-ils moins payés que les gestionnaires de programmes ? Manquent-ils de pouvoir de négociation ? 42
  5. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  6. Adieu qmake, bienvenue qbs : Qt Building Suite, un outil déclaratif et extensible pour la compilation de projets Qt 17
  7. 2017 : un quinquennat pour une nouvelle version du C++ ? Possible, selon Herb Sutter 9
Page suivante

Le Qt Labs au hasard

Logo

Peek et Poke

Les Qt Labs sont les laboratoires des développeurs de Qt, où ils peuvent partager des impressions sur le framework, son utilisation, ce que pourrait être son futur. Lire l'article.

Communauté

Ressources

Liens utiles

Contact

  • Vous souhaitez rejoindre la rédaction ou proposer un tutoriel, une traduction, une question... ? Postez dans le forum Contribuez ou contactez-nous par MP ou par email (voir en bas de page).

Qt dans le magazine

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 4.6-snapshot
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web