在我的应用程序中,我有一个带有按钮的主窗体。 单击此按钮,将创建并显示表单(不在dpr中自动创建);在这个表单上,我放置了一个TApplicationEvents组件,我定义了它的OnIdle事件处理程序。 这个事件处理程序不会被调用!可能这取决于因为我从而得出第二种形式 TForm但来自其他类,TChartBasicForm(通过VFI)? 非常感谢您的回复。 马西莫。
答案 0 :(得分:1)
挂钩应用程序的空闲事件可能会导致很多调试问题和其他维护问题,特别是在主窗体以外的表单上。我意识到这可能无法回答你的具体问题(鉴于这种模糊性很难做到这一点),但是你确定你无法完成你试图用TTimer
或{{1而不是?
答案 1 :(得分:1)
感谢所有人的兴趣。 “它不起作用”意味着它根本没有被调用。 相反,OnShowHint事件有效!
哎呀! 也许我已经理解了不良行为! 在主窗体中,我定义了一个类似这样的过程:
procedure IdleHandler(Sender: TObject; var Done: Boolean);
并在FormCreate中:
Application.OnIdle := IdleHandler;
这可能会抑制TApplicationEvents.OnIdle,即使 在IdleHandler中,在程序结束时,我把:
Application.OnIdle := nil;
因为代码仅在开始时尝试连接是有用的 申请书。
请原谅:我的脸红了......