举报

鼠标双击都无法响应

0

WM_LBUTTONDBLCLK,这个无法响应怎么办?单击就可以

ava
十年如梦✘

2020-7-27

举报
0

请参考帮助文档:https://docs.easyx.cn/GetMouseMsg

其中明确写到:默认情况下,连续的鼠标单击会被识别为一系列的单击事件。如果希望两个连续的鼠标单击识别为双击事件,请在创建绘图窗口的时候指定标志位 EW_DBLCLKS。

以下是个简单的例子,如果鼠标双击,就在双击的位置画一个圆:

#include <graphics.h> 
#include <conio.h>

int main()
{ 
	initgraph(640, 480, EW_DBLCLKS); // 初始化图形窗口,指定标志位 EW_DBLCLKS 表示支持鼠标双击事件

	MOUSEMSG msg;

	while(true)
	{
		msg = GetMouseMsg();		// 获取鼠标消息
		if (msg.uMsg == WM_LBUTTONDBLCLK)
			circle(msg.x, msg.y, 30);
	}
	
	_getch();
	closegraph();

	return 0;
}
ava
慢羊羊

2020-7-27

技术讨论社区