函式說明
將視窗註冊為具有觸控功能。
語法
BOOL WINAPI RegisterTouchWindow(
__in HWND hWnd,
__in ULONG ulFlags
);
參數
hWnd [in]
所註冊的視窗的句柄。如果調用的執行緒不擁有指定的視窗,則該函式將失敗,並顯示ERROR_ACCESS_DENIED 。
ulFlags [in]
一組可用於指定可選修改的位標誌。此欄位可能包含 0 或下列值之一。
TWF_FINETOUCH 設定 hWnd 為非合併觸摸輸入方式. 設定此標誌將禁用防止手掌誤觸功能,從而減少獲取WM_TOUCH 訊息的延遲。如果您希望在用戶觸摸應用程式時儘可能快地做出回響,這樣做非常有用。
TWF_WANTPALM 默認情況下,將啟用防止手掌誤觸功能,並阻止將某些WM_TOUCH 訊息傳送到您的應用程式。如果您不希望接收因手掌接觸引發的WM_TOUCH 訊息,這樣做非常有用。
返回值
如果函式成功,則返回值為非零值。
如果函式失敗,則返回值為零。若要獲取擴展的錯誤信息,請使用 GetLastError 函式。
評論
注意 必須針對將用於觸控輸入的每個視窗調用 RegisterTouchWindow。這意味著,如果您具有的應用程式內部包含多個視窗,則必須針對該應用程式中使用觸控功能的每個視窗調用 RegisterTouchWindow。此外,如果某個應用程式希望更改修飾符標誌,則該應用程式可以針對同一個視窗調用任意多次 RegisterTouchWindow。也可以使用 UnregisterTouchWindow 函式將一個視窗標記為不再需要觸控輸入。
如果啟用 TWF_WANTPALM,則在將來自觸控輸入的數據包傳送到您的應用程式之前,將快取這些數據包並執行防止手掌誤觸功能。啟用 TWF_WANTPALM 在您使用筆輸入時最為有用。
示例
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
HWND hWnd;
hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);
RegisterTouchWindow(hWnd, 0);
if (!hWnd)
{
return FALSE;
}
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
return TRUE;
}
要求
| 最低支持的客戶端 | Windows 7 |
| 最低支持的伺服器 | Windows Server 2008 R2 |
| 標頭 | Winuser.h (包括Windows.h) |
| 庫 | User32.lib |
| DLL | User32.dll |
