gpt4 book ai didi

c++ - 诊断神秘的 WM_PAINT 消息

转载 作者:行者123 更新时间:2023-11-28 05:53:04 26 4
gpt4 key购买 nike

我有一个神秘的 WM_PAINT 消息被无缘无故地发送到一个窗口,我无法理解。我正在使用我的一些代码发送一条 WM_PAINT 消息-

InvalidateRgn(graphwin_hwnd,NULL,1);
SendMessage(graphwin_hwnd,WM_PAINT,0,0);

但是在执行了在屏幕上绘制一些图形的后续代码之后,调试器指示第二条 WM_PAINT 消息从某处到达。我的问题是,如何诊断导致发送第二条 WM_PAINT 消息的原因。

编辑: i486 已正确指出我不需要明确执行 SendMessage()...但令我惊讶的是,即使我将其注释掉,我仍然得到 1 个多余的神秘的 WM_PAINT 消息被发送到我的图形窗口的处理程序,所以问题还没有完全解决。

编辑: 糟糕,我错了,在注释掉 SendMessage 之后,似乎我仍然有一个不相关的错误搞砸了 - 但我只收到一条 WM_PAINT 消息......所以问题解决了。

最佳答案

您不需要发送 WM_PAINT - 它会在 Invalidate 之后自动发送。调用 UpdateWindow 强制执行。可能第二个 WM_PAINT 是因为 InvalidateRgn。要对此进行测试,请注释您的 SendMessage 并检查 WM_PAINT。

关于c++ - 诊断神秘的 WM_PAINT 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34811431/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com