<class name="QSlider" doc="/** <p>The <a href="QSlider.html#QSlider(com.trolltech.qt.core.Qt.Orientation, com.trolltech.qt.gui.QWidget)"><tt>QSlider</tt></a> widget provides a vertical or horizontal slider.</p> <p>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.</p> <p><a href="QSlider.html#QSlider(com.trolltech.qt.core.Qt.Orientation, com.trolltech.qt.gui.QWidget)"><tt>QSlider</tt></a> has very few of its own functions; most of the functionality is in <a href="QAbstractSlider.html#QAbstractSlider(com.trolltech.qt.gui.QWidget)"><tt>QAbstractSlider</tt></a>. The most useful functions are <a href="QAbstractSlider.html#setValue(int)"><tt>setValue</tt></a> to set the slider directly to some value; <a href="QAbstractSlider.html#triggerAction(com.trolltech.qt.gui.QAbstractSlider.SliderAction)"><tt>triggerAction</tt></a> to simulate the effects of clicking (useful for shortcut keys); <a href="QAbstractSlider.html#setSingleStep(int)"><tt>setSingleStep</tt></a>, <a href="QAbstractSlider.html#setPageStep(int)"><tt>setPageStep</tt></a> to set the steps; and <a href="QAbstractSlider.html#setMinimum(int)"><tt>setMinimum</tt></a> and <a href="QAbstractSlider.html#setMaximum(int)"><tt>setMaximum</tt></a> to define the range of the scroll bar.</p> <p><a href="QSlider.html#QSlider(com.trolltech.qt.core.Qt.Orientation, com.trolltech.qt.gui.QWidget)"><tt>QSlider</tt></a> provides methods for controlling tickmarks. You can use <a href="QSlider.html#setTickPosition(com.trolltech.qt.gui.QSlider.TickPosition)"><tt>setTickPosition</tt></a> to indicate where you want the tickmarks to be, <a href="QSlider.html#setTickInterval(int)"><tt>setTickInterval</tt></a> to indicate how many of them you want. the currently set tick position and interval can be queried using the <a href="QSlider.html#tickPosition()"><tt>tickPosition</tt></a> and <a href="QSlider.html#tickInterval()"><tt>tickInterval</tt></a> functions, respectively.</p> <p><a href="QSlider.html#QSlider(com.trolltech.qt.core.Qt.Orientation, com.trolltech.qt.gui.QWidget)"><tt>QSlider</tt></a> inherits a comprehensive set of signals:</p> <p><table align="center" cellpadding="2" cellspacing="1" border="0"> <thead><tr valign="top" class="qt-style"><th>Signal</th><th>Description</th></tr></thead> <tr valign="top" class="odd"><td><a href="QSlider.html#valueChanged(int)"><tt>valueChanged</tt></a></td><td>Emitted when the slider's value has changed. The tracking() determines whether this signal is emitted during user interaction.</td></tr> <tr valign="top" class="even"><td><a href="QSlider.html#sliderPressed()"><tt>sliderPressed</tt></a></td><td>Emitted when the user starts to drag the slider.</td></tr> <tr valign="top" class="odd"><td><a href="QSlider.html#sliderMoved(int)"><tt>sliderMoved</tt></a></td><td>Emitted when the user drags the slider.</td></tr> <tr valign="top" class="even"><td><a href="QSlider.html#sliderReleased()"><tt>sliderReleased</tt></a></td><td>Emitted when the user releases the slider.</td></tr> </table></p> <p><a href="QSlider.html#QSlider(com.trolltech.qt.core.Qt.Orientation, com.trolltech.qt.gui.QWidget)"><tt>QSlider</tt></a> only provides integer ranges. Note that although <a href="QSlider.html#QSlider(com.trolltech.qt.core.Qt.Orientation, com.trolltech.qt.gui.QWidget)"><tt>QSlider</tt></a> handles very large numbers, it becomes difficult for users to use a slider accurately for very large ranges.</p> <p>A slider accepts focus on Tab and provides both a mouse wheel and a keyboard interface. The keyboard interface is the following:</p> <ul> <li>Left/Right move a horizontal slider by one single step.</li> <li>Up/Down move a vertical slider by one single step.</li> <li>PageUp moves up one page.</li> <li>PageDown moves down one page.</li> <li>Home moves to the start (mininum).</li> <li>End moves to the end (maximum).</li> </ul> <p><table width="100%" align="center" cellpadding="2" cellspacing="1" border="0"> <tr valign="top" class="odd"><td><img src="%2E%2E/images/macintosh-slider.png" alt="Screenshot of a Macintosh slider" /></td><td>A slider shown in the <a href="%2E%2E/gallery-macintosh.html">Macintosh widget style</tt></a>.</td></tr> <tr valign="top" class="even"><td><img src="%2E%2E/images/windows-slider.png" alt="Screenshot of a Windows XP slider" /></td><td>A slider shown in the <a href="%2E%2E/gallery-windowsxp.html">Windows XP widget style</tt></a>.</td></tr> <tr valign="top" class="odd"><td><img src="%2E%2E/images/plastique-slider.png" alt="Screenshot of a Plastique slider" /></td><td>A slider shown in the <a href="%2E%2E/gallery-plastique.html">Plastique widget style</tt></a>.</td></tr> </table></p> @see <a href="QScrollBar.html"><tt>QScrollBar</tt></a> @see <a href="QSpinBox.html"><tt>QSpinBox</tt></a> @see <a href="QDial.html"><tt>QDial</tt></a> @see <a href="%2E%2E/guibooks.html#fowler">GUI Design Handbook: Slider</tt></a> @see Sliders Example</tt> */"> <signal name="protected final void actionTriggered(int action)" doc="/** <p>This signal is emitted when the slider action <tt>action</tt> is triggered. Actions are <a href="QAbstractSlider.html#SliderAction-enum"><tt>SliderSingleStepAdd</tt></a>, <a href="QAbstractSlider.html#SliderAction-enum"><tt>SliderSingleStepSub</tt></a>, <a href="QAbstractSlider.html#SliderAction-enum"><tt>SliderPageStepAdd</tt></a>, <a href="QAbstractSlider.html#SliderAction-enum"><tt>SliderPageStepSub</tt></a>, <a href="QAbstractSlider.html#SliderAction-enum"><tt>SliderToMinimum</tt></a>, <a href="QAbstractSlider.html#SliderAction-enum"><tt>SliderToMaximum</tt></a>, and <a href="QAbstractSlider.html#SliderAction-enum"><tt>SliderMove</tt></a>.</p> <p>When the signal is emitted, the <a href="QAbstractSlider.html#sliderPosition()"><tt>sliderPosition</tt></a> has been adjusted according to the action, but the <a href="QAbstractSlider.html#value()">value</tt></a> has not yet been propagated (meaning the <a href="QSlider.html#valueChanged(int)"><tt>valueChanged</tt></a> signal was not yet emitted), and the visual display has not been updated. In slots connected to this signal you can thus safely adjust any action by calling <a href="QAbstractSlider.html#setSliderPosition(int)"><tt>setSliderPosition</tt></a> yourself, based on both the action and the slider's value.</p> <dl> <dt><b>Compatible Slot Signatures:</b></dt> <dd><tt>void mySlot(int action)</tt></dd> <dd><tt>void mySlot()</tt></dd> </dl> <dl> <dt><b>See Also:</b></dt> <dd><a href="QAbstractSlider.html#triggerAction(com.trolltech.qt.gui.QAbstractSlider.SliderAction)"><tt>triggerAction</tt></a></dd> </dl> */"/> <signal name="protected final void customContextMenuRequested(com.trolltech.qt.core.QPoint pos)" doc="/** <p>This signal is emitted when the widget's <a href="QWidget.html#contextMenuPolicy()"><tt>contextMenuPolicy</tt></a> is Qt::CustomContextMenu, and the user has requested a context menu on the widget. The position <tt>pos</tt> is the position of the context menu event that the widget receives. Normally this is in widget coordinates. The exception to this rule is <a href="QAbstractScrollArea.html"><tt>QAbstractScrollArea</tt></a> and its subclasses that map the context menu event to coordinates of the viewport()</tt> .</p> <dl> <dt><b>Compatible Slot Signatures:</b></dt> <dd><tt>void mySlot(com.trolltech.qt.core.QPoint pos)</tt></dd> <dd><tt>void mySlot()</tt></dd> </dl> <dl> <dt><b>See Also:</b></dt> <dd><a href="QWidget.html#mapToGlobal(com.trolltech.qt.core.QPoint)"><tt>mapToGlobal</tt></a>, <a href="QMenu.html"><tt>QMenu</tt></a>, <a href="QWidget.html#contextMenuPolicy()"><tt>contextMenuPolicy</tt></a></dd> </dl> */"/> <signal name="protected final void rangeChanged(int min, int max)" doc="/** <p>This signal is emitted when the slider range has changed, with <tt>min</tt> being the new minimum, and <tt>max</tt> being the new maximum.</p> <dl> <dt><b>Compatible Slot Signatures:</b></dt> <dd><tt>void mySlot(int min, int max)</tt></dd> <dd><tt>void mySlot(int min)</tt></dd> <dd><tt>void mySlot()</tt></dd> </dl> <dl> <dt><b>See Also:</b></dt> <dd><a href="QAbstractSlider.html#minimum()">minimum</tt></a>, <a href="QAbstractSlider.html#maximum()">maximum</tt></a></dd> </dl> */"/> <signal name="protected final void sliderMoved(int position)" doc="/** <p>This signal is emitted when sliderDown is true and the slider moves. This usually happens when the user is dragging the slider. The <tt>position</tt> is the new slider position.</p> <p>This signal is emitted even when tracking is turned off.</p> <dl> <dt><b>Compatible Slot Signatures:</b></dt> <dd><tt>void mySlot(int position)</tt></dd> <dd><tt>void mySlot()</tt></dd> </dl> <dl> <dt><b>See Also:</b></dt> <dd><a href="QAbstractSlider.html#setTracking(boolean)"><tt>setTracking</tt></a>, <a href="QSlider.html#valueChanged(int)"><tt>valueChanged</tt></a>, <a href="QAbstractSlider.html#isSliderDown()"><tt>isSliderDown</tt></a>, <a href="QSlider.html#sliderPressed()"><tt>sliderPressed</tt></a>, <a href="QSlider.html#sliderReleased()"><tt>sliderReleased</tt></a></dd> </dl> */"/> <signal name="protected final void sliderPressed()" doc="/** <p>This signal is emitted when the user presses the slider with the mouse, or programmatically when <a href="QAbstractSlider.html#setSliderDown(boolean)"><tt>setSliderDown</tt></a>(true) is called.</p> <dl> <dt><b>Compatible Slot Signature:</b></dt> <dd><tt>void mySlot()</tt></dd> </dl> <dl> <dt><b>See Also:</b></dt> <dd><a href="QSlider.html#sliderReleased()"><tt>sliderReleased</tt></a>, <a href="QSlider.html#sliderMoved(int)"><tt>sliderMoved</tt></a>, <a href="QAbstractSlider.html#isSliderDown()"><tt>isSliderDown</tt></a></dd> </dl> */"/> <signal name="protected final void sliderReleased()" doc="/** <p>This signal is emitted when the user releases the slider with the mouse, or programmatically when <a href="QAbstractSlider.html#setSliderDown(boolean)"><tt>setSliderDown</tt></a>(false) is called.</p> <dl> <dt><b>Compatible Slot Signature:</b></dt> <dd><tt>void mySlot()</tt></dd> </dl> <dl> <dt><b>See Also:</b></dt> <dd><a href="QSlider.html#sliderPressed()"><tt>sliderPressed</tt></a>, <a href="QSlider.html#sliderMoved(int)"><tt>sliderMoved</tt></a>, <tt>sliderDown</tt></dd> </dl> */"/> <signal name="protected final void valueChanged(int value)" doc="/** <p>This signal is emitted when the slider value has changed, with the new slider <tt>value</tt> as argument.</p> <dl> <dt><b>Compatible Slot Signatures:</b></dt> <dd><tt>void mySlot(int value)</tt></dd> <dd><tt>void mySlot()</tt></dd> </dl> */"/> <method name="public QSlider(com.trolltech.qt.gui.QWidget parent)" doc="/** <p>Constructs a vertical slider with the given <tt>parent</tt>.</p> */"/> <method name="public QSlider()" doc="/** <p>Equivalent to <a href="QSlider.html#QSlider(com.trolltech.qt.core.Qt.Orientation, com.trolltech.qt.gui.QWidget)"><tt>QSlider</tt></a>(0). */"/> <method name="public QSlider(com.trolltech.qt.core.Qt.Orientation orientation, com.trolltech.qt.gui.QWidget parent)" doc="/** <p>Constructs a slider with the given <tt>parent</tt>. The <tt>orientation</tt> parameter determines whether the slider is horizontal or vertical; the valid values are Qt::Vertical and Qt::Horizontal.</p> */"/> <method name="public QSlider(com.trolltech.qt.core.Qt.Orientation orientation)" doc="/** <p>Equivalent to <a href="QSlider.html#QSlider(com.trolltech.qt.core.Qt.Orientation, com.trolltech.qt.gui.QWidget)"><tt>QSlider</tt></a>(<tt>orientation</tt>, 0). */"/> <method name="public final void setTickInterval(int ti)" doc="/** <p>Sets the interval between tickmarks to <tt>ti</tt>.</p> <p>This is a value interval, not a pixel interval. If it is 0, the slider will choose between lineStep() and <a href="QAbstractSlider.html#pageStep()"><tt>pageStep</tt></a>.</p> <p>The default value is 0.</p> @see <a href="QSlider.html#tickInterval()"><tt>tickInterval</tt></a> @see <a href="QSlider.html#tickPosition()"><tt>tickPosition</tt></a> @see <tt>lineStep</tt> @see <a href="QAbstractSlider.html#pageStep()"><tt>pageStep</tt></a> */"/> <method name="public final void setTickPosition(com.trolltech.qt.gui.QSlider.TickPosition position)" doc="/** <p>Sets the tickmark position for this slider to <tt>position</tt>.</p> <p>The valid values are described by the QSlider::TickPosition enum.</p> <p>The default value is <tt>QSlider::NoTicks</tt>.</p> @see <a href="QSlider.html#tickPosition()"><tt>tickPosition</tt></a> @see <a href="QSlider.html#tickInterval()"><tt>tickInterval</tt></a> */"/> <method name="public final int tickInterval()" doc="/** <p>Returns the interval between tickmarks.</p> <p>This is a value interval, not a pixel interval. If it is 0, the slider will choose between lineStep() and <a href="QAbstractSlider.html#pageStep()"><tt>pageStep</tt></a>.</p> <p>The default value is 0.</p> @see <a href="QSlider.html#setTickInterval(int)"><tt>setTickInterval</tt></a> @see <a href="QSlider.html#tickPosition()"><tt>tickPosition</tt></a> @see <tt>lineStep</tt> @see <a href="QAbstractSlider.html#pageStep()"><tt>pageStep</tt></a> */"/> <method name="public final com.trolltech.qt.gui.QSlider.TickPosition tickPosition()" doc="/** <p>Returns the tickmark position for this slider.</p> <p>The valid values are described by the QSlider::TickPosition enum.</p> <p>The default value is <tt>QSlider::NoTicks</tt>.</p> @see <a href="QSlider.html#setTickPosition(com.trolltech.qt.gui.QSlider.TickPosition)"><tt>setTickPosition</tt></a> @see <a href="QSlider.html#tickInterval()"><tt>tickInterval</tt></a> */"/> <method name="public boolean event(com.trolltech.qt.core.QEvent event)" doc="/** <p>This function is reimplemented for internal reasons.</p> */"/> <method name="public com.trolltech.qt.core.QSize minimumSizeHint()" doc="/** <p>This function is reimplemented for internal reasons.</p> */"/> <method name="protected void mouseMoveEvent(com.trolltech.qt.gui.QMouseEvent ev)" doc="/** <p>This function is reimplemented for internal reasons.</p> */"/> <method name="protected void mousePressEvent(com.trolltech.qt.gui.QMouseEvent ev)" doc="/** <p>This function is reimplemented for internal reasons.</p> */"/> <method name="protected void mouseReleaseEvent(com.trolltech.qt.gui.QMouseEvent ev)" doc="/** <p>This function is reimplemented for internal reasons.</p> */"/> <method name="protected void paintEvent(com.trolltech.qt.gui.QPaintEvent ev)" doc="/** <p>This function is reimplemented for internal reasons.</p> */"/> <method name="public com.trolltech.qt.core.QSize sizeHint()" doc="/** <p>This function is reimplemented for internal reasons.</p> */"/> <enum name="TickPosition" doc="/** <p>This enum specifies where the tick marks are to be drawn relative to the slider's groove and the handle the user moves.</p> */"> <enum-value name="NoTicks" doc="/** <p>Do not draw any tick marks.</p> */"/> <enum-value name="TicksAbove" doc="/** <p>Draw tick marks above the (horizontal) slider</p> */"/> <enum-value name="TicksLeft" doc="/** <p>Draw tick marks to the left of the (vertical) slider</p> */"/> <enum-value name="TicksBelow" doc="/** <p>Draw tick marks below the (horizontal) slider</p> */"/> <enum-value name="TicksRight" doc="/** <p>Draw tick marks to the right of the (vertical) slider</p> */"/> <enum-value name="TicksBothSides" doc="/** <p>Draw tick marks on both sides of the groove.</p> */"/> </enum> </class>