共用方式為


輕彈手勢

Windows Vista 包含一組八個基本 輕彈手勢。 筆跡是與卷動動作和命令相關聯的快速線性畫筆移動。

輕掃詳細數據

輕彈功能可讓使用者透過使用手寫筆快速手勢來執行一般動作,讓用戶能夠以新的方式與平板電腦互動。 輕觸並存,且不會中斷正常用戶動作,例如左右點選、捲動和筆跡。

輕觸 是單向畫筆手勢,需要使用者在快速閃爍動作中連絡數位板。 輕彈的特點是高速和高直度。 輕觸是由其方向所識別。 輕觸可以以八個方向進行,對應至基數和次要指南針方向。

動作輕彈動作 是動作或快捷方式,以回應輕彈。 輕彈會對應至動作。 下圖顯示對應至其筆跡動作的八個手寫筆筆跡圖表。

顯示手勢地圖圖例

當使用者將手寫筆移至平板電腦數位板時,硬體會產生將畫筆封包路由傳送至平板電腦平臺的畫筆輸入子系統。 一般而言,如果畫筆用來做為滑鼠的替代專案,畫筆輸入子系統會採用這些畫筆封包,並將這些封包傳送至負責處理滑鼠輸入的 Windows 元件 User32。 如果在筆跡表面使用畫筆,則會轉譯筆跡,而不是產生滑鼠封包。

筆跡偵測例程會在畫筆輸入子系統中實作。 輕彈偵測會從手寫開始,並持續到下列其中一項:

  1. 收到的封包序列判斷不是輕彈或

  2. 手寫筆發生。

發生輕彈偵測時,會保留手寫筆封包,而不會傳送到系統。 這必須完成,因為傳送封包可能會干擾執行的輕彈動作。 例如,在對應至複製動作的輕擊期間傳送封包會關閉選取的專案,這表示在傳送動作時不會複製任何內容。

當封包流入畫筆輸入子系統時,輕彈偵測例程會計算所執行動作的長度、速度、時間和曲率計量。 每個到達的封包都會更新每個計量的偵測例程。 一旦任何計量落在構成輕彈的內容之外,輕彈偵測就會結束,並透過傳送封包。

偵測到輕彈的位置

輕拍手勢是可行的,因為拖曳通常執行得相當慢。 用戶必須先以拖曳的起點為目標、執行拖曳,然後將目標設為終點。 通常這需要太久的時間才能獲得輕彈資格。 然而,在筆跡表面快速筆劃,符合輕觸經常發生資格:交叉 't' 是常見的範例。 因此,根據預設,輕彈偵測會在筆跡表面關閉,並開啟全系統範圍。

焦點問題

一旦偵測到輕彈,就會開始一連串事件,最終導致系統執行特定動作以回應所發生的輕彈。 首先,畫筆輸入子系統內的偵測例程會決定應該傳送輕觸的視窗。 這通常是具有焦點的視窗,但有例外狀況。 對於捲動輕彈,該輕彈會傳送至發生輕彈的視窗。 請注意,這不一定是具有焦點的視窗。 當輕彈傳送至沒有焦點的視窗時,焦點不會變更為該視窗。

輕彈動作

一旦決定目標視窗,該視窗可能會根據預設或程式化事件行為來處理輕彈本身。 應用程式可以根據應用程式和輕觸的方向和位置,回應最適合的動作。 例如,在對應應用程式中,上下輕擊可能會放大或縮小,而不是垂直捲動,如預設行為預期。

若要警示應用程式發生輕擊,則會傳送視窗訊息給應用程式。 此視窗訊息包含輕觸的起點和輕觸的方向。 如果應用程式處理此視窗訊息,則畫筆輸入子系統不會採取任何進一步的動作。

偵測到閃爍之後,代表輕彈動作的視覺回饋會顯示在畫面上。 此意見反應有兩個用途。 首先,它會為使用者確認輕彈成功。 其次,它會提醒使用者執行什麼動作,協助使用者將輕觸方向與其相關聯的動作連線。

輕彈回饋由兩個部分組成:代表動作的圖示,以及包含動作名稱的標籤。 標籤會顯示在圖示下方。 偵測到輕彈之後,會立即顯示意見反應。 雖然應用程式可以藉由處理輕彈視窗訊息來自定義其行為,但應用程式無法停用或修改輕彈回饋。

預期大部分的應用程式都不會感知輕描淡寫,因此不會處理上述視窗訊息。 如果未處理訊息,畫筆輸入子系統會採取進一步的動作。 首先,它會查閱與偵測到的閃爍方向相關聯的動作。 接下來,它會採取步驟(如下表所述),讓目標窗口執行此動作。 對於許多輕拍動作,這牽涉到傳送應用程式命令,但實作的特定動作則不會。

處理應用程式命令

您的應用程式應該回應任何可能指派給輕彈手勢的應用程式命令。 如果應用程式無法回應 WM_TABLET_FLICK 訊息,Windows Vista 會接著傳送適用的 WM_APPCOMMAND 通知,然後傳送 WM_KEYDOWN 通知。

以下是可指派給輕觸的應用程式命令清單,以及可能傳送的備份擊鍵訊息。

命令 備份擊鍵
APPCOMMAND_BROWSER_BACKWARD
沒有
APPCOMMAND_BROWSER_FORWARD
沒有
APPCOMMAND_COPY
Ctrl+C
APPCOMMAND_PASTE
Ctrl+V
APPCOMMAND_UNDO
Ctrl+Z
APPCOMMAND_DELETE
戴爾
APPCOMMAND_CUT
Ctrl+X
APPCOMMAND_OPEN
Ctrl+O
APPCOMMAND_PRINT
Ctrl+P
APPCOMMAND_SAVE
Ctrl+S
APPCOMMAND_REDO
Ctrl+Y
APPCOMMAND_CLOSE

編輯命令,例如複製、貼上、剪下和刪除,可能會針對選取範圍或位於輕彈手勢基底的對象導向。 如果沒有選取專案,您可以使用 FLICK_POINT Structure 中的數據來判斷物件可能是編輯命令的目標。

Flicks API 參考

回應輕彈手勢