我写的一个有任务栏图标的程序,任务栏图标的右键弹出菜单:Open/Hide项用来显示和隐藏主窗体。问题是:当在主窗体中用代码动态创建一个模态窗体,如显示一个关于对话框:
AboutBox := TAboutBox.Create(MainForm); //主窗体为MainForm
AboutBox.ShowModal;
此时,由于关于对话框为模态,所以主窗体不能接受各种操作,但可以通过任务栏的右键弹出菜单:Open/Hide项最小化和最大化主窗体,但最小化然后再最大化主窗体后,主窗体却显示在关于对话框的前面,致使主窗体不接受任何操作,但又看不到“关于”窗体,无法将其关闭。这个问题同样出现在打开一些系统对话框中,如显示一个“打开文件”对话框、显示一个“打印对话框”时,因此特向大家请教解决方案。
我想可能有两种方案,但不知如何实现。
1、当最大化主窗体后,它显示在模态窗体的后面。
2、当显示模态窗体后,任务栏的右键弹出菜单不能弹出。
请各位大侠指点迷津呀!
我希望从主窗体上解决问题,不是用全局变量标记'显示模态窗体'等方法。