1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
void PrintTouch(TOUCHINPUT ti)
{
ostringstream wss;
wss << "ID: " << ti.dwID << " ";
wss << "x: " << ti.x << " ";
wss << "y: " << ti.y << " ";
if(ti.dwFlags & TOUCHEVENTF_MOVE)
wss << "TOUCHEVENTF_MOVE ";
if(ti.dwFlags & TOUCHEVENTF_DOWN)
wss << "TOUCHEVENTF_DOWN ";
if(ti.dwFlags & TOUCHEVENTF_UP)
wss << "TOUCHEVENTF_UP ";
if(ti.dwFlags & TOUCHEVENTF_PRIMARY)
wss << "TOUCHEVENTF_PRIMARY ";
printf("%s\n",wss.str().c_str());
}
LRESULT OnTouch(HWND hWnd, WPARAM wParam, LPARAM lParam )
{
UINT cInputs = LOWORD(wParam);
int x = 0;
int y = 0;
PTOUCHINPUT pInputs = new TOUCHINPUT[cInputs];
GetTouchInputInfo((HTOUCHINPUT)lParam, cInputs, pInputs, sizeof(TOUCHINPUT));
printf("%d\n",cInputs);
for (UINT i=0; i < cInputs; i++)
{
TOUCHINPUT ti = pInputs[i];
PrintTouch(ti);
}
delete [] pInputs;
ReleaseDC(hWnd, deviceContext);
return 0;
} |
Partager