<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- qquickrangeslider.cpp --> <title>RangeSlider QML Type | Qt Labs Controls 5.6</title> <link rel="stylesheet" type="text/css" href="style/offline-simple.css" /> <script type="text/javascript"> window.onload = function(){document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css");}; </script> </head> <body> <div class="header" id="qtdocheader"> <div class="main"> <div class="main-rounded"> <div class="navigationbar"> <table><tr> <td >Qt 5.6</td><td ><a href="qtlabscontrols-index.html">Qt Labs Controls</a></td><td ><a href="qt-labs-controls-qmlmodule.html">QML Types</a></td><td >RangeSlider QML Type</td></tr></table><table class="buildversion"><tr> <td id="buildversion" width="100%" align="right">Qt 5.6.2 Reference Documentation</td> </tr></table> </div> </div> <div class="content"> <div class="line"> <div class="content mainContent"> <div class="sidebar"> <div class="toc"> <h3><a name="toc">Contents</a></h3> <ul> <li class="level1"><a href="#properties">Properties</a></li> <li class="level1"><a href="#methods">Methods</a></li> <li class="level1"><a href="#details">Detailed Description</a></li> </ul> </div> <div class="sidebar-content" id="sidebar-content"></div></div> <h1 class="title">RangeSlider QML Type</h1> <span class="subtitle"></span> <!-- $$$RangeSlider-brief --> <p>A slider control used to select a range of values. <a href="#details">More...</a></p> <!-- @@@RangeSlider --> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> Import Statement:</td><td class="memItemRight bottomAlign"> import Qt.labs.controls 1.0</td></tr><tr><td class="memItemLeft rightAlign topAlign"> Inherits:</td><td class="memItemRight bottomAlign"> <p><a href="qml-qt-labs-controls-control.html">Control</a></p> </td></tr></table></div><ul> <li><a href="qml-qt-labs-controls-rangeslider-members.html">List of all members, including inherited members</a></li> </ul> <a name="properties"></a> <h2 id="properties">Properties</h2> <ul> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#first-prop">first</a></b></b><ul> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#first.value-prop">first.value</a></b></b> : real</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#first.position-prop">first.position</a></b></b> : real</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#first.visualPosition-prop">first.visualPosition</a></b></b> : real</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#first.handle-prop">first.handle</a></b></b> : Item</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#first.pressed-prop">first.pressed</a></b></b> : bool</li> </ul> </li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#from-prop">from</a></b></b> : real</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#orientation-prop">orientation</a></b></b> : enumeration</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#second-prop">second</a></b></b><ul> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#second.value-prop">second.value</a></b></b> : real</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#second.position-prop">second.position</a></b></b> : real</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#second.visualPosition-prop">second.visualPosition</a></b></b> : real</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#second.handle-prop">second.handle</a></b></b> : Item</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#second.pressed-prop">second.pressed</a></b></b> : bool</li> </ul> </li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#snapMode-prop">snapMode</a></b></b> : enumeration</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a></b></b> : real</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#to-prop">to</a></b></b> : real</li> <li class="fn"><b><b><a href="qml-qt-labs-controls-rangeslider.html#track-prop">track</a></b></b> : Item</li> </ul> <a name="methods"></a> <h2 id="methods">Methods</h2> <ul> <li class="fn">void <b><b><a href="qml-qt-labs-controls-rangeslider.html#first.decrease-method">first.decrease</a></b></b>()</li> <li class="fn">void <b><b><a href="qml-qt-labs-controls-rangeslider.html#first.increase-method">first.increase</a></b></b>()</li> <li class="fn">void <b><b><a href="qml-qt-labs-controls-rangeslider.html#second.decrease-method">second.decrease</a></b></b>()</li> <li class="fn">void <b><b><a href="qml-qt-labs-controls-rangeslider.html#second.increase-method">second.increase</a></b></b>()</li> <li class="fn">void <b><b><a href="qml-qt-labs-controls-rangeslider.html#setValues-method">setValues</a></b></b>(real <i>firstValue</i>, real <i>secondValue</i>)</li> </ul> <!-- $$$RangeSlider-description --> <a name="details"></a> <h2 id="details">Detailed Description</h2> </p> <p class="centerAlign"><img src="images/qtlabscontrols-rangeslider.gif" alt="" /></p><p><a href="qml-qt-labs-controls-rangeslider.html">RangeSlider</a> is used to select a range specified by two values, by sliding each handle along a track.</p> <div class="table"><table class="generic"> <tr valign="top" class="odd"><td ><p class="centerAlign"><img src="images/qtlabscontrols-rangeslider-normal.png" alt="" /></p></td><td >A range slider in its normal state.</td></tr> <tr valign="top" class="even"><td ><p class="centerAlign"><img src="images/qtlabscontrols-rangeslider-first-handle-focused.png" alt="" /></p></td><td >A range slider whose first handle has active focus.</td></tr> <tr valign="top" class="odd"><td ><p class="centerAlign"><img src="images/qtlabscontrols-rangeslider-second-handle-focused.png" alt="" /></p></td><td >A range slider whose second handle has active focus.</td></tr> <tr valign="top" class="even"><td ><p class="centerAlign"><img src="images/qtlabscontrols-rangeslider-disabled.png" alt="" /></p></td><td >A range slider that is disabled.</td></tr> </table></div> <pre class="cpp"> RangeSlider { first<span class="operator">.</span>value: <span class="number">0.25</span> second<span class="operator">.</span>value: <span class="number">0.75</span> } </pre> <p><b>Note: </b><i>Types in the Qt.labs module are not guaranteed to remain compatible in future versions.</i></p><p><b>See also </b><a href="qtlabscontrols-customize.html#customizing-rangeslider">Customizing RangeSlider</a> and <a href="qtlabscontrols-input.html">Input Controls</a>.</p> <!-- @@@RangeSlider --> <h2>Property Documentation</h2> <!-- $$$first --> <div class="qmlitem"><div class="qmlproto"><div class="table"><table class="qmlname"><tr valign="top" class="even" id="first-prop"><th class="centerAlign"><p><a name="first-prop"></a><b>first group</b></p></th></tr><tr valign="top" class="odd" id="first.value-prop"><td class="tblQmlPropNode"><p><a name="first.value-prop"></a><span class="name">first.value</span> : <span class="type">real</span></p></td></tr><tr valign="top" class="odd" id="first.position-prop"><td class="tblQmlPropNode"><p><a name="first.position-prop"></a><span class="name">first.position</span> : <span class="type">real</span></p></td></tr><tr valign="top" class="odd" id="first.visualPosition-prop"><td class="tblQmlPropNode"><p><a name="first.visualPosition-prop"></a><span class="name">first.visualPosition</span> : <span class="type">real</span></p></td></tr><tr valign="top" class="odd" id="first.handle-prop"><td class="tblQmlPropNode"><p><a name="first.handle-prop"></a><span class="name">first.handle</span> : <span class="type">Item</span></p></td></tr><tr valign="top" class="odd" id="first.pressed-prop"><td class="tblQmlPropNode"><p><a name="first.pressed-prop"></a><span class="name">first.pressed</span> : <span class="type">bool</span></p></td></tr></table></div></div><div class="qmldoc"><div class="table"><table class="generic"> <thead><tr class="qt-style"><th >Property</th><th >Description</th></tr></thead> <tr valign="top" class="odd"><td >value</td><td >This property holds the value of the first handle in the range <code>from</code> - <code>to</code>.<p>If <a href="qml-qt-labs-controls-rangeslider.html#to-prop">to</a> is greater than <a href="qml-qt-labs-controls-rangeslider.html#from-prop">from</a>, the value of the first handle must be greater than the second, and vice versa.</p> <p>Unlike <a href="qml-qt-labs-controls-rangeslider.html#first.position-prop">position</a>, value is not updated while the handle is dragged, but rather when it has been released.</p> <p>The default value is <code>0.0</code>.</p> </td></tr> <tr valign="top" class="even"><td >handle</td><td >This property holds the first handle item.</td></tr> <tr valign="top" class="odd"><td >visualPosition</td><td >This property holds the visual position of the first handle.<p>The position is defined as a percentage of the control's size, scaled to <code>0.0 - 1.0</code>. When the control is <a href="qml-qt-labs-controls-control.html#mirrored-prop">mirrored</a>, the value is equal to <code>1.0 - position</code>. This makes the value suitable for visualizing the slider, taking right-to-left support into account.</p> </td></tr> <tr valign="top" class="even"><td >position</td><td >This property holds the logical position of the first handle.<p>The position is defined as a percentage of the control's size, scaled to <code>0.0 - 1.0</code>. Unlike <a href="qml-qt-labs-controls-rangeslider.html#first.value-prop">value</a>, position is continuously updated while the handle is dragged. For visualizing a slider, the right-to-left aware <a href="qml-qt-labs-controls-rangeslider.html#first.visualPosition-prop">visualPosition</a> should be used instead.</p> </td></tr> <tr valign="top" class="odd"><td >pressed</td><td >This property holds whether the first handle is pressed.</td></tr> </table></div> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#first.increase-method">first.increase()</a> and <a href="qml-qt-labs-controls-rangeslider.html#first.decrease-method">first.decrease()</a>.</p> </div></div><!-- @@@first --> <br/> <!-- $$$from --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="from-prop"> <td class="tblQmlPropNode"><p> <a name="from-prop"></a><span class="name">from</span> : <span class="type">real</span></p></td></tr> </table></div> </div><div class="qmldoc"><p>This property holds the starting value for the range. The default value is <code>0.0</code>.</p> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#to-prop">to</a>, <a href="qml-qt-labs-controls-rangeslider.html#first.value-prop">first.value</a>, and <a href="qml-qt-labs-controls-rangeslider.html#second.value-prop">second.value</a>.</p> </div></div><!-- @@@from --> <br/> <!-- $$$orientation --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="orientation-prop"> <td class="tblQmlPropNode"><p> <a name="orientation-prop"></a><span class="name">orientation</span> : <span class="type">enumeration</span></p></td></tr> </table></div> </div><div class="qmldoc"><p>This property holds the orientation.</p> <p>Possible values:</p> <div class="table"><table class="valuelist"><tr valign="top" class="odd"><th class="tblConst">Constant</th><th class="tbldscr">Description</th></tr> <tr><td class="topAlign"><code>Qt.Horizontal</code></td><td class="topAlign">Horizontal (default)</td></tr> <tr><td class="topAlign"><code>Qt.Vertical</code></td><td class="topAlign">Vertical</td></tr> </table></div> </div></div><!-- @@@orientation --> <br/> <!-- $$$second --> <div class="qmlitem"><div class="qmlproto"><div class="table"><table class="qmlname"><tr valign="top" class="even" id="second-prop"><th class="centerAlign"><p><a name="second-prop"></a><b>second group</b></p></th></tr><tr valign="top" class="odd" id="second.value-prop"><td class="tblQmlPropNode"><p><a name="second.value-prop"></a><span class="name">second.value</span> : <span class="type">real</span></p></td></tr><tr valign="top" class="odd" id="second.position-prop"><td class="tblQmlPropNode"><p><a name="second.position-prop"></a><span class="name">second.position</span> : <span class="type">real</span></p></td></tr><tr valign="top" class="odd" id="second.visualPosition-prop"><td class="tblQmlPropNode"><p><a name="second.visualPosition-prop"></a><span class="name">second.visualPosition</span> : <span class="type">real</span></p></td></tr><tr valign="top" class="odd" id="second.handle-prop"><td class="tblQmlPropNode"><p><a name="second.handle-prop"></a><span class="name">second.handle</span> : <span class="type">Item</span></p></td></tr><tr valign="top" class="odd" id="second.pressed-prop"><td class="tblQmlPropNode"><p><a name="second.pressed-prop"></a><span class="name">second.pressed</span> : <span class="type">bool</span></p></td></tr></table></div></div><div class="qmldoc"><div class="table"><table class="generic"> <thead><tr class="qt-style"><th >Property</th><th >Description</th></tr></thead> <tr valign="top" class="odd"><td >value</td><td >This property holds the value of the second handle in the range <code>from</code> - <code>to</code>.<p>If <a href="qml-qt-labs-controls-rangeslider.html#to-prop">to</a> is greater than <a href="qml-qt-labs-controls-rangeslider.html#from-prop">from</a>, the value of the first handle must be greater than the second, and vice versa.</p> <p>Unlike <a href="qml-qt-labs-controls-rangeslider.html#second.position-prop">position</a>, value is not updated while the handle is dragged, but rather when it has been released.</p> <p>The default value is <code>0.0</code>.</p> </td></tr> <tr valign="top" class="even"><td >handle</td><td >This property holds the second handle item.</td></tr> <tr valign="top" class="odd"><td >visualPosition</td><td >This property holds the visual position of the second handle.<p>The position is defined as a percentage of the control's size, scaled to <code>0.0 - 1.0</code>. When the control is <a href="qml-qt-labs-controls-control.html#mirrored-prop">mirrored</a>, the value is equal to <code>1.0 - position</code>. This makes the value suitable for visualizing the slider, taking right-to-left support into account.</p> </td></tr> <tr valign="top" class="even"><td >position</td><td >This property holds the logical position of the second handle.<p>The position is defined as a percentage of the control's size, scaled to <code>0.0 - 1.0</code>. Unlike <a href="qml-qt-labs-controls-rangeslider.html#second.value-prop">value</a>, position is continuously updated while the handle is dragged. For visualizing a slider, the right-to-left aware <a href="qml-qt-labs-controls-rangeslider.html#second.visualPosition-prop">visualPosition</a> should be used instead.</p> </td></tr> <tr valign="top" class="odd"><td >pressed</td><td >This property holds whether the second handle is pressed.</td></tr> </table></div> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#second.increase-method">second.increase()</a> and <a href="qml-qt-labs-controls-rangeslider.html#second.decrease-method">second.decrease()</a>.</p> </div></div><!-- @@@second --> <br/> <!-- $$$snapMode --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="snapMode-prop"> <td class="tblQmlPropNode"><p> <a name="snapMode-prop"></a><span class="name">snapMode</span> : <span class="type">enumeration</span></p></td></tr> </table></div> </div><div class="qmldoc"><p>This property holds the snap mode.</p> <p>Possible values:</p> <div class="table"><table class="valuelist"><tr valign="top" class="odd"><th class="tblConst">Constant</th><th class="tbldscr">Description</th></tr> <tr><td class="topAlign"><code>RangeSlider.NoSnap</code></td><td class="topAlign">The slider does not snap (default).</td></tr> <tr><td class="topAlign"><code>RangeSlider.SnapAlways</code></td><td class="topAlign">The slider snaps while the handle is dragged.</td></tr> <tr><td class="topAlign"><code>RangeSlider.SnapOnRelease</code></td><td class="topAlign">The slider does not snap while being dragged, but only after the handle is released.</td></tr> </table></div> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a>.</p> </div></div><!-- @@@snapMode --> <br/> <!-- $$$stepSize --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="stepSize-prop"> <td class="tblQmlPropNode"><p> <a name="stepSize-prop"></a><span class="name">stepSize</span> : <span class="type">real</span></p></td></tr> </table></div> </div><div class="qmldoc"><p>This property holds the step size. The default value is <code>0.0</code>.</p> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#snapMode-prop">snapMode</a>, <a href="qml-qt-labs-controls-rangeslider.html#first.increase-method">first.increase()</a>, and <a href="qml-qt-labs-controls-rangeslider.html#first.decrease-method">first.decrease()</a>.</p> </div></div><!-- @@@stepSize --> <br/> <!-- $$$to --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="to-prop"> <td class="tblQmlPropNode"><p> <a name="to-prop"></a><span class="name">to</span> : <span class="type">real</span></p></td></tr> </table></div> </div><div class="qmldoc"><p>This property holds the end value for the range. The default value is <code>1.0</code>.</p> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#from-prop">from</a>, <a href="qml-qt-labs-controls-rangeslider.html#first.value-prop">first.value</a>, and <a href="qml-qt-labs-controls-rangeslider.html#second.value-prop">second.value</a>.</p> </div></div><!-- @@@to --> <br/> <!-- $$$track --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="track-prop"> <td class="tblQmlPropNode"><p> <a name="track-prop"></a><span class="name">track</span> : <span class="type">Item</span></p></td></tr> </table></div> </div><div class="qmldoc"><p>This property holds the track item.</p> <p><b>See also </b><a href="qtlabscontrols-customize.html#customizing-slider">Customizing Slider</a>.</p> </div></div><!-- @@@track --> <br/> <h2>Method Documentation</h2> <!-- $$$first.decrease --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="first.decrease-method"> <td class="tblQmlFuncNode"><p> <a name="first.decrease-method"></a><span class="type">void</span> <span class="name">first.decrease</span>()</p></td></tr> </table></div> </div><div class="qmldoc"><p>Decreases the value of the handle by <a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a>, or <code>0.1</code> if <a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a> is not defined.</p> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#first-prop">first</a>.</p> </div></div><!-- @@@first.decrease --> <br/> <!-- $$$first.increase --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="first.increase-method"> <td class="tblQmlFuncNode"><p> <a name="first.increase-method"></a><span class="type">void</span> <span class="name">first.increase</span>()</p></td></tr> </table></div> </div><div class="qmldoc"><p>Increases the value of the handle by <a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a>, or <code>0.1</code> if <a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a> is not defined.</p> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#first-prop">first</a>.</p> </div></div><!-- @@@first.increase --> <br/> <!-- $$$second.decrease --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="second.decrease-method"> <td class="tblQmlFuncNode"><p> <a name="second.decrease-method"></a><span class="type">void</span> <span class="name">second.decrease</span>()</p></td></tr> </table></div> </div><div class="qmldoc"><p>Decreases the value of the handle by <a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a>, or <code>0.1</code> if <a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a> is not defined.</p> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#second-prop">second</a>.</p> </div></div><!-- @@@second.decrease --> <br/> <!-- $$$second.increase --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="second.increase-method"> <td class="tblQmlFuncNode"><p> <a name="second.increase-method"></a><span class="type">void</span> <span class="name">second.increase</span>()</p></td></tr> </table></div> </div><div class="qmldoc"><p>Increases the value of the handle by <a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a>, or <code>0.1</code> if <a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a> is not defined.</p> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#second-prop">second</a>.</p> </div></div><!-- @@@second.increase --> <br/> <!-- $$$setValues --> <div class="qmlitem"><div class="qmlproto"> <div class="table"><table class="qmlname"> <tr valign="top" class="odd" id="setValues-method"> <td class="tblQmlFuncNode"><p> <a name="setValues-method"></a><span class="type">void</span> <span class="name">setValues</span>(<span class="type">real</span> <i>firstValue</i>, <span class="type">real</span> <i>secondValue</i>)</p></td></tr> </table></div> </div><div class="qmldoc"><p>Sets <a href="qml-qt-labs-controls-rangeslider.html#first.value-prop">first.value</a> and <a href="qml-qt-labs-controls-rangeslider.html#second.value-prop">second.value</a> with the given arguments.</p> <p>If <i>to</i> is larger than <i>from</i> and <i>firstValue</i> is larger than <i>secondValue</i>, <i>firstValue</i> will be clamped to <i>secondValue</i>.</p> <p>If <i>from</i> is larger than <i>to</i> and <i>secondValue</i> is larger than <i>firstValue</i>, <i>secondValue</i> will be clamped to <i>firstValue</i>.</p> <p>This function may be necessary to set the first and second values after the control has been completed, as there is a circular dependency between firstValue and secondValue which can cause assigned values to be clamped to each other.</p> <p><b>See also </b><a href="qml-qt-labs-controls-rangeslider.html#stepSize-prop">stepSize</a>.</p> </div></div><!-- @@@setValues --> <br/> </div> </div> </div> </div> </div> <div class="footer"> <p> <acronym title="Copyright">©</acronym> 2016 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners.<br> The documentation provided herein is licensed under the terms of the <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation License version 1.3</a> as published by the Free Software Foundation.<br> Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners. </p> </div> </body> </html>