出于某种原因,使用 SetCapture 函数会导致 PtInRect() 函数不起作用!
这是一些代码:
POINT curmouse;
RECT testrect = {0, 0, 200, 200};
WM_LBUTTONDOWN:
if (MK_LBUTTONDOWN == true)
SetCapture(hWnd);
break;
WM_MOUSEMOVE:
curmouse.x = LOWORD(lParam);
curmouse.y = HIWORD(lParam);
WM_LBUTTONUP:
if (PtInRect(&testrect , curmouse))
//Draw Image
请注意:我没有在 WM_LBUTTONUP 上调用释放捕获。实际上,永远不会调用 releasecapture!
如果我不调用 setcapture,那么 ptinrect 在鼠标释放时会按预期工作。
有人可以告诉我如何让 ptinrect 与被调用的 setcapture() 一起工作吗?
最重要的是,该程序中有两个单独的窗口。第一个窗口名为 bg_window,第二个名为 other_window。