// 设置窗口标题,以便查找窗口的句柄
SetConsoleTitle(L"x");
Sleep(100);// 确保窗口标题已经设置成功
HWND wnd = FindWindow(NULL, L"x");
// 保存鼠标位置
POINT point;
GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标)
// 将鼠标指针位置转换为窗口坐标
ScreenToClient(wnd/*GetConsoleWindow();// 也可以用这个函数得到cmd的窗口句柄,但是低版本的VS不太支持*/, &point);
printf("%d , %d \n",point.x,point.y);
封装后的函数:
// 得到鼠标相对于CMD窗口的位置
POINT GetMousePoint()
{
POINT point; // 保存鼠标位置
GetCursorPos(&point); // 获取鼠标指针位置(屏幕坐标)
ScreenToClient(m_wnd, &point); // 将鼠标指针位置转换为窗口坐标
return point;
}
如果要得到鼠标按下的状态,请看GetKeyState和GetAsyncKeyState函数:http://www.huidong.xyz/index.php?mode=2&id=54