The QAbstractSlider 类提供在范围内的整数值。 更多...
| 头: | #include <QAbstractSlider> |
| 继承: | QWidget |
| 继承者: | QDial , QScrollBar ,和 QSlider |
| enum | SliderAction { SliderNoAction, SliderSingleStepAdd, SliderSingleStepSub, SliderPageStepAdd, ..., SliderMove } |
|
|
| QAbstractSlider (QWidget * parent = 0) | |
| ~QAbstractSlider () | |
| bool | hasTracking () const |
| bool | invertedAppearance () const |
| bool | invertedControls () const |
| bool | isSliderDown () const |
| int | maximum () const |
| int | minimum () const |
| Qt::Orientation | orientation () const |
| int | pageStep () const |
| void | setInvertedAppearance (bool) |
| void | setInvertedControls (bool) |
| void | setMaximum (int) |
| void | setMinimum (int) |
| void | setPageStep (int) |
| void | setRange (int min , int max ) |
| void | setSingleStep (int) |
| void | setSliderDown (bool) |
| void | setSliderPosition (int) |
| void | setTracking (bool enable ) |
| int | singleStep () const |
| int | sliderPosition () const |
| void | triggerAction (SliderAction action ) |
| int | value () const |
| void | setOrientation (Qt::Orientation) |
| void | setValue (int) |
| void | actionTriggered (int action ) |
| void | rangeChanged (int min , int max ) |
| void | sliderMoved (int value ) |
| void | sliderPressed () |
| void | sliderReleased () |
| void | valueChanged (int value ) |
| enum | SliderChange { SliderRangeChange, SliderOrientationChange, SliderStepsChange, SliderValueChange } |
| SliderAction | repeatAction () const |
| void | setRepeatAction (SliderAction action , int thresholdTime = 500, int repeatTime = 50) |
| virtual void | sliderChange (SliderChange change ) |
| virtual void | changeEvent (QEvent * ev ) |
| virtual bool | event (QEvent * e ) |
| virtual void | keyPressEvent (QKeyEvent * ev ) |
| virtual void | timerEvent (QTimerEvent * e ) |
| virtual void | wheelEvent (QWheelEvent * e ) |
The QAbstractSlider 类提供在范围内的整数值。
此类被设计作为 Widget 的通用超类像 QScrollBar , QSlider and QDial .
这里是类的主要特性:
可以将整体 1 视为第 3 步幅大小。 setValue () 允许将当前值设为在允许范围内的任何整数,不仅仅是 minimum () + n * singleStep () 对于整数值 n 。某些 Widget 可能允许用户设置任何根本值;其它 Widget 可能仅仅提供倍增 singleStep () 或 pageStep ().
QAbstractSlider emits a comprehensive set of signals:
| 信号 | 发射当 |
|---|---|
| valueChanged () | 值已改变。 tracking 确定用户交互期间是否发射此信号。 |
| sliderPressed () | 用户开始拖拽滑块。 |
| sliderMoved () | 用户拖拽滑块。 |
| sliderReleased () | 用户释放滑块。 |
| actionTriggered () | a slider action was triggerd. |
| rangeChanged () | 范围已改变。 |
QAbstractSlider provides a virtual sliderChange () 函数非常适于更新屏幕上的滑块表示。通过调用 triggerAction (),子类触发滑块动作。2 帮手函数 QStyle::sliderPositionFromValue () 和 QStyle::sliderValueFromPosition () 帮助子类和样式将屏幕坐标,映射到逻辑范围值。
另请参阅 QAbstractSpinBox , QSlider , QDial , QScrollBar ,和 滑块范例 .
| 常量 | 值 |
|---|---|
QAbstractSlider::SliderNoAction
|
0
|
QAbstractSlider::SliderSingleStepAdd
|
1
|
QAbstractSlider::SliderSingleStepSub
|
2
|
QAbstractSlider::SliderPageStepAdd
|
3
|
QAbstractSlider::SliderPageStepSub
|
4
|
QAbstractSlider::SliderToMinimum
|
5
|
QAbstractSlider::SliderToMaximum
|
6
|
QAbstractSlider::SliderMove
|
7
|
| 常量 | 值 |
|---|---|
QAbstractSlider::SliderRangeChange
|
0
|
QAbstractSlider::SliderOrientationChange
|
1
|
QAbstractSlider::SliderStepsChange
|
2
|
QAbstractSlider::SliderValueChange
|
3
|
此特性保持滑块是否展示其值的倒置。
If this property is false (the default), the minimum and maximum will be shown in its classic position for the inherited widget. If the value is true, the minimum and maximum appear at their opposite location.
注意:此特性对于滑块和表盘最有意义。对于滚动条,滚动条子控件的视觉效果从属样式是否理解反转外观;大多数样式会忽略,用于滚动条的此特性。
访问函数:
| bool | invertedAppearance () const |
| void | setInvertedAppearance (bool) |
此特性保持滑块是否反转其滚轮和键事件。
If this property is false, scrolling the mouse wheel "up" and using keys like page up will increase the slider's value towards its maximum. Otherwise pressing page up will move value towards the slider's minimum.
访问函数:
| bool | invertedControls () const |
| void | setInvertedControls (bool) |
This property holds the slider's maximum value.
当设置此特性时, minimum 被调节若有必要,以确保范围仍然有效。滑块的当前值也被调节到新范围内。
访问函数:
| int | maximum () const |
| void | setMaximum (int) |
This property holds the sliders's minimum value.
当设置此特性时, maximum 被调节若有必要,以确保范围仍然有效。滑块的当前值也被调节到新范围内。
访问函数:
| int | minimum () const |
| void | setMinimum (int) |
This property holds the orientation of the slider.
取向必须是 Qt::Vertical (默认) 或 Qt::Horizontal .
访问函数:
| Qt::Orientation | orientation () const |
| void | setOrientation (Qt::Orientation) |
此特性保持页面步幅。
由抽象滑块提供的 2 自然步幅中的较大者,通常相当于用户按下 PageUp 或 PageDown。
访问函数:
| int | pageStep () const |
| void | setPageStep (int) |
另请参阅 singleStep .
此特性保持单步幅。
由抽象滑块提供的 2 自然步幅中的较小者,通常相当于用户按下箭头键。
若在自动重复键事件期间修改特性,行为不确定。
访问函数:
| int | singleStep () const |
| void | setSingleStep (int) |
另请参阅 pageStep .
此特性保持滑块是否被按下。
特性由子类设置,为让抽象滑块知道是否 tracking 有任何效果。
改变滑块向下特性会发射 sliderPressed () 和 sliderReleased () 信号。
访问函数:
| bool | isSliderDown () const |
| void | setSliderDown (bool) |
This property holds the current slider position.
若 tracking 被启用 (默认),这等同于 value .
访问函数:
| int | sliderPosition () const |
| void | setSliderPosition (int) |
通知程序信号:
| void | sliderMoved (int value ) |
This property holds whether slider tracking is enabled.
若启用追踪 (默认),滑块发射 valueChanged () 信号当滑块正被拖拽时。若跟踪被禁用,滑块发射 valueChanged () 信号仅当用户释放滑块时。
访问函数:
| bool | hasTracking () const |
| void | setTracking (bool enable ) |
另请参阅 sliderDown .
This property holds the slider's current value.
滑块将值强制在合法范围内:
minimum
<=
值
<=
maximum
.
更改值也会改变 sliderPosition .
访问函数:
| int | value () const |
| void | setValue (int) |
通知程序信号:
| void | valueChanged (int value ) |
构造抽象滑块。
The parent 自变量被发送给 QWidget 构造函数。
The minimum 默认为 0, maximum 到 99,采用 singleStep 1 尺寸和 pageStep 10 尺寸,及初始 value of 0.
销毁滑块。
[signal]
void
QAbstractSlider::
actionTriggered
(
int
action
)
此信号被发射当滑块动作 action 被触发。动作是 SliderSingleStepAdd , SliderSingleStepSub , SliderPageStepAdd , SliderPageStepSub , SliderToMinimum , SliderToMaximum ,和 SliderMove .
当发射信号时, sliderPosition 已调节根据动作,但 value 尚未被传播 (意味着 valueChanged () 信号尚未被发射),且尚未更新视觉显示。在连接到此信号的槽中,因此可以安全地调节任何动作通过调用 setSliderPosition () 本身,基于动作和滑块值两者。
另请参阅 triggerAction ().
[virtual protected]
void
QAbstractSlider::
changeEvent
(
QEvent
*
ev
)
重实现自 QWidget::changeEvent ().
[virtual protected]
bool
QAbstractSlider::
event
(
QEvent
*
e
)
重实现自 QObject::event ().
[virtual protected]
void
QAbstractSlider::
keyPressEvent
(
QKeyEvent
*
ev
)
重实现自 QWidget::keyPressEvent ().
[signal]
void
QAbstractSlider::
rangeChanged
(
int
min
,
int
max
)
此信号被发射当滑块范围已改变时,按 min 是新的最小值,而 max 是新的最大值。
[protected]
SliderAction
QAbstractSlider::
repeatAction
() const
返回当前的重复动作。
另请参阅 setRepeatAction ().
设置滑块的最小值为 min 和其最大值为 max .
若 max 小于 min , min 变为唯一合法值。
[protected]
void
QAbstractSlider::
setRepeatAction
(
SliderAction
action
,
int
thresholdTime
= 500,
int
repeatTime
= 50)
设置动作 action 以重复触发按间隔 repeatTime ,后于初始延迟 thresholdTime .
另请参阅 triggerAction () 和 repeatAction ().
[virtual protected]
void
QAbstractSlider::
sliderChange
(
SliderChange
change
)
重实现此虚函数以跟踪滑块变化,譬如 SliderRangeChange , SliderOrientationChange , SliderStepsChange ,或 SliderValueChange 。默认实现只更新显示并忽略 change 参数。
[signal]
void
QAbstractSlider::
sliderPressed
()
此信号被发射当用户采用鼠标按下滑块时,或以编程方式当 setSliderDown (true) 被调用。
另请参阅 sliderReleased (), sliderMoved (),和 isSliderDown ().
[signal]
void
QAbstractSlider::
sliderReleased
()
此信号被发射当用户采用鼠标释放滑块时,或以编程方式当 setSliderDown (false) 被调用。
另请参阅 sliderPressed (), sliderMoved (),和 sliderDown .
[virtual protected]
void
QAbstractSlider::
timerEvent
(
QTimerEvent
*
e
)
重实现自 QObject::timerEvent ().
触发滑块 action 。可能的动作是 SliderSingleStepAdd , SliderSingleStepSub , SliderPageStepAdd , SliderPageStepSub , SliderToMinimum , SliderToMaximum ,和 SliderMove .
另请参阅 actionTriggered ().
[virtual protected]
void
QAbstractSlider::
wheelEvent
(
QWheelEvent
*
e
)
重实现自 QWidget::wheelEvent ().