IInkCollector::get_CollectionMode 方法 (msinkaut.h)
取得或設定集合模式,判斷筆跡、手勢或兩者是否都辨識為使用者寫入。
這是可讀寫的屬性。
語法
HRESULT get_CollectionMode(
InkCollectionMode *Mode
);
參數
Mode
傳回值
無
備註
如需您可以使用的模式清單,請參閱 InkCollectionMode 列舉類型。 不過,在已安裝 Microsoft Windows XP Tablet PC Edition 軟體開發工具包的系統上使用 CollectionMode 屬性 (SDK) 但未安裝辨識器時,模式無法設定為 GestureOnly 或 InkAndGesture。
注意如果您嘗試在收集筆跡時變更 CollectionMode 屬性,InkCollector 物件、InkOverlay 物件或 InkPicture 控件會產生錯誤。 若要避免此衝突,請先檢查 CollectionInk 屬性,再變更 CollectionMode 屬性。
InkOnly 模式
- 只會收集筆跡;手勢不是。
- 筆勢事件興趣會設定為 FALSE, (所有其他事件興趣會保持) 。
GestureOnly 模式
- 只會收集手勢;筆跡不是。 筆劃會在傳送至手勢辨識器之後刪除。
- 筆勢事件興趣會設定為TRUE, (所有其他事件興趣會保持) 。
- 筆跡收集器不會引發下列筆劃和封包相關事件: CursorDown、 Stroke、 NewPackets 和 NewInAirPackets 事件。
- 引發數據指標事件。
- 一律會刪除筆跡。
- 會收集筆跡和手勢。
- 只會辨識單筆劃手勢。
- 筆勢事件興趣會設定為TRUE, (所有其他事件興趣會保持) 。
- 手勢事件會先引發,讓您接受或取消手勢。 若要取消手勢,請將 Cancel 參數設定為 TRUE。 取消手勢會強制筆跡收集器收集筆跡。
當 CollectionMode 設定為 InkAndGesture,且已知手勢的物件/控件興趣 (設定為 setGestureStatus 方法時,可能會發生不必要的行為,方法是呼叫 SetGestureStatus 方法) 。 如果您繪製類似已知手勢的筆跡,且已知手勢位於辨識器替代專案清單中, 則即使手勢 不是頂端替代專案,筆勢事件也會引發並消失筆跡。 若要防止筆跡消失並取消筆勢的集合,如果事件是您不感興趣的事件,請將 Cancel 參數設定為 TRUE 。
當 CollectionMode 設定為 GestureOnly 時,當使用者新增手勢時和 發生 Gesture 事件之間的逾時是固定值,無法以程式設計方式改變。 筆勢辨識在 InkAndGesture 模式中更快。 若要防止在 InkAndGesture 模式中收集筆跡,您可以:
- 將 CollectionMode 屬性設定為 InkAndGesture。
- 在 Stroke 事件中,刪除筆劃。
- 在 Gesture 事件中,處理手勢。
- 將 DynamicRendering 設定為 FALSE ,以防止筆墨在進行時流動。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP Tablet PC Edition [僅限傳統型應用程式] |
最低支援的伺服器 | 都不支援 |
目標平台 | Windows |
標頭 | msinkaut.h |
程式庫 | InkObj.dll |