我采用的方式是:主程序为MDI窗体,调用DLL中的MDI子窗体,带包编译后,出现了一些怪问题:
1,之前自定义的应用程序图标没有了,变成了长方形的白块
2,mdi子窗体跑到了主窗体外面,主程序直接打开的子窗体是饱含在主程序里的,但是,子窗体再打开的窗体,就跑到了主程序外面,也就是在工具栏上又多了一块
还请大家帮忙看看是什么原因啊
1,之前自定义的应用程序图标没有了,变成了长方形的白块
2,mdi子窗体跑到了主窗体外面,主程序直接打开的子窗体是饱含在主程序里的,但是,子窗体再打开的窗体,就跑到了主程序外面,也就是在工具栏上又多了一块
还请大家帮忙看看是什么原因啊
procedure ReplaceGlobalApp(const MainApp:TApplication);
begin
Application:=MainApp;
end;
主程序加载DLL后马上调用它:
ReplaceGlobalApp(Application);
就能解决问题了
建议楼主:
1、检查你的窗体上面的图标属性是否已设置
2、检查你新建的窗体是否设置了fsMDIChild
回复lake_cx:1,主窗体的图标属性设置了,但是不起作用,dll中的子窗体未设置
2,dll中的子窗体设置为fsMDIChild,但是用子窗体新建的窗体没有设置