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