标签: c++ winapi dialog modal-dialog blocking
是否可以使用 DialogBox(Param)创建一个模式对话框,阻止其所有者线程中的所有其他顶级窗口,使用MB_TASKMODAL标志创建类似的消息框?
使用场景涉及一个由多个顶级窗口(主要是无模式对话框)组成的应用程序UI。
答案 0 :(得分:3)
我不知道是否有API可以执行此操作,但您可以自己完成。
调用EnumThreadWindows枚举与您的线程关联的顶级窗口。在回调函数中调用EnableWindow来禁用窗口(在显示对话框之前)或启用它(在对话框关闭之后)。