我有一个 Delphi 2006 应用程序,当检测到错误情况时,它会弹出模式警报对话框。由于对错误条件的检查是在空闲处理程序中完成的,因此如果恰好显示了另一个模式对话框,则该对话框可能会在另一个模式对话框的顶部弹出。这可能会导致用户感到困惑,因为警报对话框关闭后应用程序主窗体没有获得焦点,因为这是另一个模糊的模式对话框。
我想做的是在应用程序打开任何模态对话框时推迟警报弹出窗口。
我尝试了 GetLastActivePopup (MyMainWindow.Handle) 但它似乎始终返回非零。
See TApplication.ModalLevel http://docwiki.embarcadero.com/VCL/en/Forms.TApplication.ModalLevel or the TApplication.OnModalBegin http://docwiki.embarcadero.com/VCL/en/Forms.TApplication.OnModalBegin and TApplication.OnModalEnd http://docwiki.embarcadero.com/VCL/en/Forms.TApplication.OnModalEnd事件。另请参阅这个问题 https://stackoverflow.com/questions/284581/how-do-i-discover-if-my-delphi-application-currently-has-a-modal-window.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)