WM_CLOSE 和 SC_CLOSE 之间的区别

Soh*_*pta 3 .net windows-messages winforms

我只是想知道这两个消息常量之间有什么区别。WndProc重写时我应该在方法中使用哪一个来处理关闭按钮消息。

Dam*_*ver 6

WM_CLOSE每当请求以任何方式关闭窗口时,都会将其作为窗口消息发送。

SC_CLOSEWM_SYSCOMMAND当用户按下“关闭”按钮(或从窗口的控制菜单中选择“关闭”)时,作为消息的参数发送。

您收听哪一个取决于您尝试拦截/处理的操作。

  • 如果您想*每当*窗口关闭时执行此操作(无论是用户按下“关闭”按钮,还是应用程序中要求关闭窗口的按钮,或者当任务管理器向窗口发送关闭消息时),使用“WM_CLOSE”。 (2认同)