fishc_learn_win 发表于 2023-5-29 13:23:13

多个界面通用的消息如何处理

一个程序为了模块化,设计成多个子窗口,这些子窗口不一定同时打开。程序有个检测串口指令线程,这个线程根据指令就会执行特定的动作,比如poweroff 表示关闭程序,检测串口指令线程往窗口发送WM_POWEROFF消息。消息默认会发往活动窗口。关闭程序我觉得可以得方式:
1、子窗口处理WM_POWEROFF消息,关闭程序
2、子窗口不处理消息把消息发主窗口,主窗口去统一处理关闭程序。按B站《041窗口和键盘》章节,活动窗口处理不了,就发往主窗口,就时这种处理方式
3、(GetMessage (&msg, NULL, 0, 0))发现是WM_POWEROFF消息,就从顶层逐个关闭窗口按说也可以。


我现在拿到得程序用得方式1
因客户定制多,消息变化频繁(还有其他消息),方式1、方式2,每次所有窗口都改,感觉好麻烦。

各位,一般用哪种方式程序更健壮,更合理。
页: [1]
查看完整版本: 多个界面通用的消息如何处理