高人请进来

linweihua77 linweihua77 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
本人在调试一个系统时遇到一个奇怪的问题,编译通过,但是在运行时出错,经过断点跟踪,发现Form中的constructor create 和Form本身的Create执行顺序乱了,如下代码段:

constructor TBaseFormDataNavChild.Create(AOwner: TComponent;
AMoudleName: string = '');
begin
1 inherited Create(AOwner, AMoudleName);
2 with lc_SalaryMainForm.dxBarListWindows do
3 begin
4 Items.AddObject(Self.Caption, Self);
5 end;
6 da := TDataAccess.Create(Self);
end;

procedure TBaseFormDataNavChild.FormCreate(Sender: TObject);
begin
7 inherited;
8 CreatePopMenu;
end;

在我本机调试时的执行顺序是:1,7,8,2,3,4,5,6 ,为什么会是这样?请高人指点,不胜感谢!
...全文
评论 12
收藏 已收藏
分享
返回顶部
linweihua77
Delphi 5,944 成员 262,941 内容