Windows 杂散的WM_大小会导致调整大小到错误的大小
我有一个很严重的错误,我得到了一个错位的Windows 杂散的WM_大小会导致调整大小到错误的大小,windows,winapi,Windows,Winapi,我有一个很严重的错误,我得到了一个错位的WM_SIZE消息,导致我的窗口调整到错误的大小 情景1(好): 用户执行放大窗口的不透明操作(以及其他非窗口操作) 应用程序使用较大的大小调用SetWindowPlacement 窗口的大小调整正确 场景2(bug): 与上面的1和2相同 在窗口调整大小之前的几秒钟内,用户通过标题拖动窗口(由于操作需要几秒钟才能完成,因此可以这样做) 窗口将调整为较大的大小,然后立即缩小为原始大小 使用Spy++,我发现确实有一个较大的WM_SIZE发送,但最后还有一个
WM_SIZE
消息,导致我的窗口调整到错误的大小
情景1(好):
WM_SIZE
发送,但最后还有一个额外的WM_SIZE
,与先前的大小一起发送
我尝试了以下相关信息:WM\u WINDOWPOSCHANGING
,WM\u WINDOWPOSCHANGED
,WM\u MOUSEMOVE
,WM\u ENTERSIZEMOVE
——没有人暗示发生了什么
你知道我应该在哪里查找这个错误消息的来源吗?“这是可能的,因为操作需要几秒钟才能完成”-可能是你的错误。假定在UI线程上运行的操作不需要几秒钟即可完成。卸下它,让你的用户界面恢复到响应速度。(OP)可能是非常值得研究的情况。然而,为什么要发送额外的WM_大小?如果我们需要评估,我们将能够更好地对此进行评论。我们还不清楚您的具体实现是什么,我无法重现您的问题。