BYTE digitizerStatus = (BYTE)GetSystemMetrics(SM_DIGITIZER);
if ((digitizerStatus & (0x80 + 0x40)) == 0) { /* 無多點觸控裝置 */ }
BYTE nInputs = (BYTE)GetSystemMetrics(SM_MAXIMUMTOUCHES); // 觸點數上限
RegisterTouchWindow(hWnd, 0); // 讓視窗接收 WM_TOUCH 而非 WM_GESTURE
GetTouchInputInfo((HTOUCHINPUT)lParam, numInputs, ti, sizeof(TOUCHINPUT));
for (UINT i=0; i
TOUCHINPUT 結構包含 X、Y、時間戳、觸控類型。開發者需在處理函式中建立運動模型,計算方位角、速率、法向/切向加速度,識別具體手勢。
呼叫 GetGestureInfo 直接取得系統辨識的手勢類型與參數,適合不需自訂手勢的應用。