读书人

关于BEZIER曲线的有关问题

发布时间: 2012-04-17 15:06:33 作者: rapoo

关于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

读书人网 >VC/MFC

热点推荐