如何检测窗口是否已最大化?

Jam*_*iaz 6 c++ winapi visual-c++

有谁知道窗口最大化时发送的 WM_MESSAGE (通过在标题栏中按下最大化按钮,或通过双击标题栏?)

是否有关于按下最大化按钮的 Windows 消息?

Win32/C++,谢谢。

jac*_*ate 5

您将收到WM_SIZE消息,wParam 中的值为 SIZE_MAXIMIZED

编辑

下面的 @jamesdlin 评论引起了我对WM_WINDOWPOSCHANGED文档的关注,其中指出(强调我的):

备注 默认情况下,DefWindowProc 函数将 WM_SIZE 和 WM_MOVE 消息发送到窗口。如果应用程序在未调用 DefWindowProc 的情况下处理 WM_WINDOWPOSCHANGED 消息,则不会发送 WM_SIZE 和 WM_MOVE 消息。在 WM_WINDOWPOSCHANGED 消息期间执行任何移动或大小更改处理而不调用 DefWindowProc 会更有效。

谢谢詹姆斯!