扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
Posting Messages
应用程序post消息通知指定窗体执行任务。PostMessage可以创建MSG结构并将它Copy到消息队列。消息循环最终捕获消息并分发到合适的窗口过程。 给PostMessage传递一个NULL句柄不指定哪一个窗口,这个消息就被发送到当前线程消息队列,应用程序必须在消息处理中处理这个消息。这是为整个应用程序发送消息的一个方法。 偶尔你可以使用HWND_TOPMOST 这个参数作为句柄参数向所有的top-level窗口发送消息。 当消息队列满的时候PostMessage并不发送消息,应用程序需要检查PostMessage函数的返回值来确定消息是否被发送,或者没有需要重发。
Sending Messages
通过Send消息来通知窗口过程立即执行任务。SendMessage将消息发送给指定窗口的窗口过程。函数将等待窗口过程处理完才返回一个消息结果。父窗口和子窗口通常使用Send消息来互相通讯。例如,一个父窗口拥有以一个文本框作为它的子窗口,它可以通过发送消息到子窗口来给文本框设置文字。子窗口也可将文字被用户改变的消息发送给父窗口。 SendMessageCallback也将消息发送给指定窗口的窗口过程,但是他立即返回。在窗口过程处理完消息后,系统调用指定的回调函数,回调函数的详细资料参见SendAsyncProc偶尔,你可以发送消息系统中到所有的top-level窗口,例如,应用程序改变了系统时间。它必须以HWND_TOPMOST作为句柄参数发送一个WM_TIMECHANGE 消息通知所有的top-level窗口,你也可以将lpdwRecipients 指定为BSM_APPLICATIONS 用BroadcastSystemMessage函数向所有应用程序广播。可以使用InSendMessage或者InSendMessageEx函数,窗口过程可以判断它处理的消息是否是由其他线程调用SendMessage发送过来的。This capability is useful when message processing depends on the origin of the message.
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1575434
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者