#include <iostream>
#include <Windows.h>//ok
//#include <windows.h>
using namespace std;
int main()
{
while(1)
{
//1. 获取鼠标的坐标
POINT curPoint;
if( !GetCursorPos(&curPoint))
return -1;
// cout << "s_point:" << s_point;//error,未实现cout<<
cout << "x: " << curPoint.x << ", y: " << curPoint.y << endl;
//2. 获取鼠标所在点的窗口句柄
HWND mainWindow = WindowFromPoint(curPoint);
//3. 获取窗口的位置信息
RECT mainWindowRect;
mainWindowRect.left=mainWindowRect.right=mainWindowRect.bottom=mainWindowRect.top = 0;//这里的初始化可有可无
if (!GetWindowRect(mainWindow,&mainWindowRect))
return -1;
//cout << "mainWindowRect: " << mainWindowRect;//error,未实现cout<<
cout << "mainWindowRect: (" << mainWindowRect.left << ", " << mainWindowRect.top << ", "
<< mainWindowRect.right - mainWindowRect.left << " * "
<< mainWindowRect.bottom - mainWindowRect.top<< ")" << endl;
//4. 获取窗口的客户区(即是不包含标题栏和状态栏的部分)
RECT mainwindowClientRect;
GetClientRect(mainWindow,&mainwindowClientRect);
POINT mcPoint;
mcPoint.x = mcPoint.y = 0; //这里的初始化不能能少,否则会出错
ClientToScreen(mainWindow,&mcPoint);
int width = mainwindowClientRect.right - mainwindowClientRect.left;
int height= mainwindowClientRect.bottom - mainwindowClientRect.top;
cout << "mainwindowClientRect: (" << mcPoint.x << ", " << mcPoint.y << ", " << width << " * " << height << ")" << endl << endl;
Sleep(2000);
}
return 0;
}
windows之获取鼠标所在窗口区域
最新推荐文章于 2025-03-21 14:01:03 发布