关于BEZIER曲线的有关问题
关于BEZIER曲线的问题C/C++ codecase WM_LBUTTONDOWN:case WM_RBUTTONDOWN:case WM_MOUSEMOVE:{if (wParam
关于BEZIER曲线的问题
C/C++ code case WM_LBUTTONDOWN: case WM_RBUTTONDOWN: case WM_MOUSEMOVE: { if (wParam & MK_LBUTTON || wParam & MK_RBUTTON) { hdc = GetDC(hwnd); SelectObject(hdc, GetStockObject(WHITE_PEN)); DrawBezier(hdc, apt); if (wParam & MK_LBUTTON) { apt[1].x = LOWORD(lParam); apt[1].y = HIWORD(lParam); } if (wParam & MK_RBUTTON) { apt[2].x = LOWORD(lParam); apt[2].y = HIWORD(lParam); } SelectObject(hdc, GetStockObject(BLACK_PEN)); DrawBezier(hdc, apt); ReleaseDC(hwnd, hdc); } return 0; }
上面是画BEZIER曲线的核心代码 我想知道的是里面的wParam 和 HIWORD(lParam) LOWORD(lParam) 具体是指的什么东西
是窗口的坐标吗?貌似能随时变化?
[解决办法]在帮助中搜索“WM_MOUSEMOVE”:
WM_MOUSEMOVE
fwKeys = wParam; // key flags
xPos = LOWORD(lParam); // horizontal position of cursor
yPos = HIWORD(lParam); // vertical position of cursor
同理:
WM_LBUTTONDOWN
fwKeys = wParam; // key flags
xPos = LOWORD(lParam); // horizontal position of cursor
yPos = HIWORD(lParam); // vertical position of cursor