以下是我的理解,可能有出入,希望不会误导你
1、不带=号的消息是系统直接投递过来的。
2、带=号的是父窗口首先接受到的,再映射成子窗口的消息,而有些消息由系统投递过来的时候可能只是一个普通的"不带=号"的消息,父窗口接收后将它“翻译”了,一般来说父窗口只是简单的翻译它而不进行处理,但你应当可以在父窗口中截获它们自己处理而不发送给子窗口。关于通信,父窗口如果考虑到子窗口也需要处理某消息,一般是在自己处理完后或者之前直接调用子窗口对应(映射)的函数。如果无需处理,当然就不必了,这有些时候是由开发者决定的,要不我们重载或者映射一些消息作什么,就是控制通信。有的消息是直接投递到程序的各个窗口的,父窗口和子窗口各自处理。象关闭窗口这个操作如果是发生在父窗口上,它当然要通知子窗口,不过不是带=号的,应该都是直接用映射调用,不在发送消息。