【发布时间】:2021-08-27 23:10:57
【问题描述】:
我有一个 MainForm,它在激活时会调用另一个 Form 来更改应用程序日期(模态、显示、关闭),然后进行一些检查并显示一条消息(如果它适用于检查)。
有没有办法在关闭第一个窗体之后但在显示消息之前显示(绘制)主窗体?
今天:
- MainForm.Activate
- 日期表单使用
- 在桌面(或其他应用程序)上显示 MessageDlg
- MainForm 绘制且可见
我想要这样的东西,但我可以弄清楚如何:
- MainForm.Activate
- 日期表单使用
- MainForm 绘制且可见
- 在 MainForm 上显示 MessageDlg
感谢您的任何想法!
【问题讨论】:
-
如果您可以显示您正在使用的代码,这将有所帮助。但是在这种情况下我可能会做的是使用
TThread.ForceQueue()或等效于延迟显示MessageDlg()直到MainForm 准备好之后,例如:TThread.ForceQueue(nil, procedure begin MessageDlg(...); end); -
你说:有没有办法在关闭第一个表单之后,但在显示消息之前显示(绘制)MainForm? 之后关闭第一个表单,但之前显示消息。如果您在 date-set-check-something 表单中显示消息,如果表单关闭,它们如何显示。为什么需要表格来检查日期?你真的应该像现在一样展示你的代码。
-
使用 OnShow 代替 OnActivate 怎么样? (现在无法测试自己)