Win32编程,如何监听窗口移动
若以下回答无法解决问题,邀请你更新回答
1个回答
2018-05-27
展开全部
函数原型:
BOOL ClientToScreen(
_In_ HWND hWnd,
_Inout_ LPPOINT lpPoint
);
调用:
LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam) {
char one_line[80];
CPoint mousePos;
switch(message)
{
case WM_LBUTTONDOWN:
GetCursorPos(&mousePos);
ClientToScreen(hwnd,&mousePos); // 转屏幕座标
sprintf(one_line,"move Pos.x=%u Pos.y=%u",mousePos.x ,mousePos.y);
(void) OnDisplayMessage(one_line); // 自己写个显示函数
return 0;
//....
};
}
显示函数:
void OnDisplayMessage(char *str)
{
AfxMessageBox(str,MB_OK | MB_ICONINFORMATION,0);
}
BOOL ClientToScreen(
_In_ HWND hWnd,
_Inout_ LPPOINT lpPoint
);
调用:
LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam) {
char one_line[80];
CPoint mousePos;
switch(message)
{
case WM_LBUTTONDOWN:
GetCursorPos(&mousePos);
ClientToScreen(hwnd,&mousePos); // 转屏幕座标
sprintf(one_line,"move Pos.x=%u Pos.y=%u",mousePos.x ,mousePos.y);
(void) OnDisplayMessage(one_line); // 自己写个显示函数
return 0;
//....
};
}
显示函数:
void OnDisplayMessage(char *str)
{
AfxMessageBox(str,MB_OK | MB_ICONINFORMATION,0);
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询