delphi – 尝试捕获表单的oncreate
发布时间:2020-12-15 09:45:23 所属栏目:大数据 来源:网络整理
导读:我工作的项目包括几百种表格. 它们主要来自主体.应用程序名称位于所有表单中. 现在应用程序的另一个“版本”必须将表单标题更改为另一个应用程序名称.但这是有条件的. 我提出的是绑定 Screen.OnActiveFormChange := ScreenOnActiveFormChange; 在formcreate
我工作的项目包括几百种表格.
它们主要来自主体.应用程序名称位于所有表单中. 现在应用程序的另一个“版本”必须将表单标题更改为另一个应用程序名称.但这是有条件的. 我提出的是绑定 Screen.OnActiveFormChange := ScreenOnActiveFormChange; 在formcreate中并为此制定程序. procedure TFormMAIN.ScreenOnActiveFormChange(Sender: TObject); begin if Newversion then begin if assigned(screen.activeform) then begin Screen.ActiveForm.Caption := SwapFormCaption(Screen.ActiveForm.Caption); end; end; end; 这在95%的案例中运作良好.但是在那些5%中,表格显示得太快了.在更新标题之前绘制窗口,窗口将其保留在那里.但标题已经有了新的价值. 我真正想要的是拦截子表单的创建而不是激活.我试图找到相关的资源,但没有成功. 解决方法
你尝试过使用window api吗?
SetWindowText(Screen.ActiveForm.Handle,PChar(SwapFormCaption(Screen.ActiveForm.Caption)); 编辑: DrawMenuBar(Screen.ActiveForm.Handle); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读