Roson讲Qt #11 QSlider(滑块)

浅浅的花香味﹌ 2022-09-07 12:08 329阅读 0赞

1.什么是QSlider

  1. QSlider小部件提供一个垂直或水平滑块。
  2. 滑块是控制有界值的经典小部件。它允许用户沿着水平或垂直槽移动滑块手柄,并将手柄的位置转换为合法范围内的整数值。
  3. QSlider有很少的自己的功能;大部分功能都在QAbstractSlider中。最有用的函数是setValue()直接将滑块设置为某个值;triggerAction()来模拟点击的效果(对于快捷键很有用);setSingleStep(), setPageStep()设置步骤;和setMinimum()和setMaximum()来定义滚动条的范围。
  4. QSlider提供了控制标记的方法。您可以使用setTickPosition()来指示您想要标记的位置,setTickInterval()来指示您想要多少个标记。当前设置的tick位置和时间间隔可以分别使用tickPosition()和tickInterval()函数查询。
  5. QSlider继承了一套全面的信号:























Signal Description
valueChanged() 当滑块的值改变时触发。跟踪()确定是否在用户交互期间发出此信号。
sliderPressed() 当用户开始拖动滑块时触发。
sliderMoved() 当用户拖动滑块时触发。
sliderReleased() 当用户释放滑块时触发。
  1. QSlider只提供整数范围。注意,虽然QSlider处理非常大的数字,但用户很难准确地使用滑块用于非常大的范围。
  2. Tab键可以切换焦点到此控件上,并且鼠标和键盘都能控制滑块移动:
  • 向左/向右键——移动水平滑块一步。
  • 向上/向下键——移动一个垂直滑块单步。
  • PageUp键——向上移动一页。
  • PageDown键——向下移动一页。
  • Home键——移动到开始(最小)。
  • End键——移动到末尾(最大值)。

2.QSlider使用

2.1 设置滑动条方向(水平或者垂直)

  1. ui.horizontalSlider->setOrientation(Qt::Vertical);
  2. ui.horizontalSlider->setFixedSize(20,200);

20210823113851850.png

2.2 设置刻度线位置







































Constant Value Description
QSlider::NoTicks 0 不要画任何刻度线。
QSlider::TicksBothSides 3 在槽的两边画上刻度线
QSlider::TicksAbove 1 在(水平)滑块上方画刻度线
QSlider::TicksBelow 2 在(水平)滑块下面画刻度线
QSlider::TicksLeft TicksAbove 在(垂直的)滑块的左边画刻度线
QSlider::TicksRight TicksBelow 在(垂直的)滑块的右边画刻度线

在滑块下面画刻度线

  1. ui.horizontalSlider->setTickPosition(QSlider::TicksBelow);

2021082311404697.png

在滑块上面和下面同时画刻度线

  1. ui.horizontalSlider->setTickPosition(QSlider::QSlider::TicksBothSides);

20210823114156180.png

2.3 设置刻度线间隔

默认总长度为100,设置刻度间隔为20之后,会分成5个区间,每个区间占20.

  1. ui.horizontalSlider->setTickPosition(QSlider::TicksBelow);
  2. ui.horizontalSlider->setTickInterval(20);

20210823114304200.png

2.4 设置滑块的位置

  1. ui.horizontalSlider->setTickPosition(QSlider::TicksBelow);
  2. ui.horizontalSlider->setTickInterval(20);
  3. ui.horizontalSlider->setValue(50);

20210823114430861.png

2.5 获取滑块的位置

  1. ui.horizontalSlider->value();

发表评论

表情:
评论列表 (有 0 条评论,329人围观)

还没有评论,来说两句吧...

相关阅读

    相关 RosonQt #3 QLineEdit

    1.什么是QLineEdit     QLineEdit小部件是一个单行文本编辑器。                     QLineEdit允许用户输入和编辑一行纯