The QGesture 類錶示包含描述相應用戶輸入特性的手勢。 更多...
| 頭: | #include <QGesture> |
| qmake: | QT += widgets |
| Since: | Qt 4.6 |
| 繼承: | QObject |
| 繼承者: | QPanGesture , QPinchGesture , QSwipeGesture , QTapAndHoldGesture ,和 QTapGesture |
| enum | GestureCancelPolicy { CancelNone, CancelAllInContext } |
|
| QGesture (QObject * parent = Q_NULLPTR) | |
| ~QGesture () | |
| GestureCancelPolicy | gestureCancelPolicy () const |
| Qt::GestureType | gestureType () const |
| bool | hasHotSpot () const |
| QPointF | hotSpot () const |
| void | setGestureCancelPolicy (GestureCancelPolicy policy ) |
| void | setHotSpot (const QPointF & value ) |
| Qt::GestureState | state () const |
| void | unsetHotSpot () |
The QGesture 類錶示包含描述相應用戶輸入特性的手勢。
手勢對象不是由開發者直接構造的。它們的創建是通過 QGestureRecognizer 對象由應用程序注冊;見 QGestureRecognizer::registerRecognizer ().
Qt 中手勢處理的概述和在應用程序中使用手勢的有關信息,見 Widget 和圖形視圖中的手勢 文檔。
擁有用戶可查詢特性列錶的類,能獲得一些特定手勢自變量。例如,捏閤手勢擁有作為特性暴露的比例縮放因子。
自定義手勢識彆器的開發者可以添加額外特性,以提供有關手勢的額外信息。這可以做到通過將新動態特性添加給 QGesture 對象,或通過子類化 QGesture 類 (或其子類之一)。
A QGesture 實例是隱式創建的 (當需要時) 且由 Qt 所有。開發者從不應該銷毀它們 (或存儲它們以供稍後使用),因為 Qt 可能銷毀它們的特定實例並創建新的實例以替換它們。
注冊手勢識彆器監視目標對象的輸入事件憑藉其 recognize() 函數,按要求更新手勢對象特性。
可以將手勢對象交付給目標對象在 QGestureEvent 若相應手勢是活動的 (或剛被取消)。交付的每個事件都含有手勢對象列錶,因為目標對象可以啓用支持一個以上手勢。由於 Qt 處理事件的方式,手勢事件可以被其它對象過濾掉。
另請參閱 QGestureEvent and QGestureRecognizer .
此枚舉描述如何接受可以自動取消其它手勢的手勢。
| 常量 | 值 | 描述 |
|---|---|---|
QGesture::CancelNone
|
0
|
接受此手勢時,其它手勢不受影響。 |
QGesture::CancelAllInContext
|
1
|
接受此手勢時,上下文中的所有活動手勢 (考慮 Qt::GestureFlag 的指定,當訂閱手勢時) 將被取消。 |
此特性保持決定接受手勢時會發生什麼的策略
當接受一個手勢時,Qt 可以自動取消屬於其它目標的其它手勢。策略通常設為不取消任何其它手勢,且可以被設為取消上下文中的所有活動手勢。例如,對於所有子級 Widget。
訪問函數:
| GestureCancelPolicy | gestureCancelPolicy () const |
| void | setGestureCancelPolicy (GestureCancelPolicy policy ) |
此特性保持手勢的類型
訪問函數:
| Qt::GestureType | gestureType () const |
此特性保持手勢是否擁有熱點
訪問函數:
| bool | hasHotSpot () const |
此特性保持用於查找手勢事件接收器的點。
熱點是全局坐標係中的點,使用 QWidget::mapFromGlobal () 或 QGestureEvent::mapToGraphicsScene () 獲取局部熱點。
應通過手勢識彆器設置熱點,以允許將手勢事件交付給 QGraphicsObject .
訪問函數:
| QPointF | hotSpot () const |
| void | setHotSpot (const QPointF & value ) |
| void | unsetHotSpot () |
此特性保持手勢的當前狀態
訪問函數:
| Qt::GestureState | state () const |
構造新的手勢對象采用給定 parent .
QGesture 對象是由手勢識彆器創建的在 QGestureRecognizer::create () 函數。
銷毀手勢對象。