举报

EasyX似乎peekmessage的消息类型选择不太管用?

1

#include<iostream>
#include<easyx.h>
int main()
{
	initgraph(300, 300);
	ExMessage msg;
	while (1) {
		if (peekmessage(&msg, EX_KEY))
			std::cout << "gotted\n";
	}
} 

msg捕获到WM_MOUSEMOVE事件(调试可得),但是EX_KEY不应该捕获这类消息啊

二次编辑:更加神奇的是,将peekmessage改成getmessage并微调后,就能够获得对应的信息了

#include<iostream>
#include<easyx.h>
int main()
{
	initgraph(300, 300);
	ExMessage msg;
	while (1) {
		getmessage(&msg, EX_KEY);
		std::cout << "gotted\n";
	}
}

  

bug
ava
xiaobbl

2024-2-13

举报
1

谢谢反馈,的确是个 bug。

最新版本 EasyX 已经修复这个问题。

(留意下私信,可以加我领个红包 ^_^)

ava
慢羊羊

2024-2-18

举报
0

代码错误,我发现什么消息都获取不到

本人测试正常,peekmessage(&msg, EX_KEY) 不会获取鼠标信息

ava
xiongfj ◑◑

2024-2-13

emm我发现我没截取msg的定义qwq还有能看一下dalao你的正常代码吗 我看看我这能不能正常 -  xiaobbl  2024-2-13
举报
@xiaobbl 你可以把有问题的源码发出来看看 -  xiongfj ◑◑  2024-2-13
举报
@xiongfj ◑◑ 只有我发出来的那一段 我是单独写了这一段代码拿出来测发现了这个问题 只是漏了一句ExMessage msg; 会不会是因为我定义结构体的方式出了问题? -  xiaobbl  2024-2-13
举报
@xiongfj ◑◑ 相似地 把EX_KEY改成EX_MOUSE同样也会对按键作出反应 而且把peekmessage改成getmessage居然正常了(见修改过后的题干 -  xiaobbl  2024-2-13
举报
@xiaobbl 正在测试,谢谢反馈 .. -  xiongfj ◑◑  2024-2-14
举报
技术讨论社区