|
|
1
4
这可能是矛盾的,但不,没有新的线程为新窗口启动。但是,一个新的消息循环被打开。这样可以保持消息在窗口中流动,并避免停止其他应用程序。 消息将到达,并可能被发送到所有者窗口的消息循环。在所有者窗口上,键盘和鼠标输入已被禁用,但所有其他消息都将通过发送。 HansPassant注意:实际上,同一线程的所有顶级窗口都将以这种方式禁用。
作为你在问题中已经提到的一个例子,
通过这种方式,可以移动一个消息框,并且底层的所有者可以被整齐地重新绘制,或者滴答滴答的时钟仍然在滴答滴答。
部分信息来自
Rector and Newcomer's Win32 Programming
,第752页,旧的,但仍然有价值和有效的信息。此信息适用于
|
|
|
2
4
两个窗口保持在同一线程上。该线程——GUI线程——继续处理两个窗口的消息。 模态对话的特殊之处在于:
|
|
|
3
0
窗口,或者更确切地说是窗口的消息,由创建窗口的线程处理:调用
|
|
|
4
0
模式对话框
要处理模式对话框的消息,系统将启动自己的消息循环,对整个应用程序的消息队列进行临时控制。当系统检索到一条不明确用于对话框的消息时,它会将该消息发送到相应的窗口。如果它检索到
|
|
|
user107586 · 如何处理等待句柄不会导致无限循环? 1 年前 |
|
|
ron burgundy · 获取-释放语义是否跨线程传递?[副本] 1 年前 |
|
|
BenjiFB · C#内存缓存:在一次操作中追加到列表? 1 年前 |
|
|
András Takács · Python多线程问题 1 年前 |
|
|
András Takács · Python多线程错误 1 年前 |