C++里用什么函数获取鼠标位置

C++里用什么函数获取鼠标位置,第1张

OnMouseMove的后一个参数就是鼠标当前位置

void CTest1View::OnMouseMove(UINT nFlags, CPoint point)

{

// TODO: Add your message handler code here and/or call default

CView::OnMouseMove(nFlags, point);

CPoint MousePosition = point;

}

仔细看下这个头文件inputh 和结构体 input_event 的描述吧,对你应该有帮助;

/

The event structure itself

/

struct input_event {

struct timeval time;

__u16 type;

__u16 code;

__s32 value;

};

里面有关于type、code、value值的介绍;

理解这个之后,你就明白什么时候代表按下鼠标左键,什么时候松开鼠标左键,什么时候按下鼠标右键、什么时候松开鼠标右键;

/

Event types

/

#define EV_KEY 0x01

/

Keys and buttons , code values

/

#define BTN_MOUSE 0x110

#define BTN_LEFT 0x110

#define BTN_RIGHT 0x111

#define BTN_MIDDLE 0x112

#define BTN_SIDE 0x113

#define BTN_EXTRA 0x114

#define BTN_FORWARD 0x115

#define BTN_BACK 0x116

#define BTN_TASK 0x117

#include \r\nint main()\r\n{\r\n while (1)\r\n {\r\n POINT pNow = {0,0};\r\n if (GetCursorPos(&pNow)) // 获取鼠标当前位置\r\n {\r\n HWND hwndPointNow = NULL;\r\n hwndPointNow = WindowFromPoint(pNow); // 获取鼠标所在窗口的句柄\r\n if (hwndPointNow)\r\n {\r\n //cout 回答于 2022-11-16

比如获取窗体的鼠标形状,在Form的MouseMove事件里面private void Form1_MouseMove(object sender, MouseEventArgs e)

{

Cursor c = thisCursor;

MessageBoxShow(cToString());

}获取其他控件上鼠标的形状类似,,在MouseMove事件里面获取

楼主你好。

是因为程序卡在这里了:

Y=(int)posY;

if (inRecEventType == MOUSE_EVENT && inRecEventMouseEventdwButtonState == FROM_LEFT_1ST_BUTTON_PRESSED&&Y<=3&&Y>=1) //鼠标左键

break;

这里无法break出来。原因是Y<=3&&Y>=1这个条件无法满足。

程序还在调试中。

鼠标在窗口上移动时,会产生mousemove消息,在这个消息里可以得到鼠标的位置,这个坐标是相对于客户区的。getcursorpos也可以获取鼠标当前位置,这个位置是相对于屏幕 坐标的。具体的请参考MSDN

以上就是关于C++里用什么函数获取鼠标位置全部的内容,包括:C++里用什么函数获取鼠标位置、在linux下编c语言的程序,我想判断鼠标的按键状态,该怎么写程序啊HELP啊!、如何用获取当前鼠标所在窗口的句柄及窗口标题用c或c++等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9539726.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存