如何在mdi的主窗体中调用一个DLL中的子窗体(dll是动态调用的)
我是想在一个主窗体中动态的调用一个动态库用来显示一个子窗口
其中DLL中的窗体的formstyle :fsMDIchild
而调用动态库的是一个 formstyle :fsMDIform
这样那一位高手用过帮个忙吧多谢了。
我是想在一个主窗体中动态的调用一个动态库用来显示一个子窗口
其中DLL中的窗体的formstyle :fsMDIchild
而调用动态库的是一个 formstyle :fsMDIform
这样那一位高手用过帮个忙吧多谢了。
解决方案 »
- RichViewEdit内容间距的设置?
- 急,急,急。sql server中,字符型char字段导致clientdataset.locate定位不准问题。
- 在DELPHI源程序中如何动态创建ACCESS数据库及当即建表文件
- 谁用过IdSMTPServer这个东东?
- 放分请大家列举一些经典电影!!!!!!!!!!!!!
- 急!我刚开始学,有一个问题,请大家给解答,谢谢!!
- 大侠,怎么显示QRDBRickText阿?100分哦!!
- 把ppt文件对象在olecontainer中显示,并播放幻灯片
- 哪位大虾擅长HtmlHelp WorkShop例如:Index,HelpContext等,如果写,要详细,最好有文章或下载地址.不要告诉我看英文帮助。
- 请问怎么才能这么做?
- 搞不懂,线程暂停问题。
- 关于pascal的问题
主题是“关于Dll与mdi子窗体的研讨”
可以参考以下代码:
function ShowFrm(AHandle:Thandle):bool;stdcall;
begin
Application.Handle:=AHandle;
try
formstyle:=Tformstyle.create(Application);
with formstyle do
begin
if ShoeModal = mrOK then
begin
//在关闭该窗口之前
//这里可以加上一些处理,根据需要
end;
end;
finally
formstyle.free;
end;
end;
function ShowFrm(AHandle:Thandle):bool;stdcall;
begin
Application.Handle:=AHandle;
myfrom:=TMyform.create(Application);
try
{myfrom:=TMyform.create(Application)比 Application.CreateFrom(tmyform,myform)要好}
with myform do
begin
formstyle:=fsMDIchild;
if ShoWModal = mrOK then
begin
...................
end;
end;
finally
myform.free;
end;
end;
function ShowFrm(AHandle:TApplication):bool;stdcall;
begin
Application:= AHandle;
try
formstyle:=Tformstyle.create(Application);
with formstyle do
begin
if ShoeModal = mrOK then
begin
//在关闭该窗口之前
//这里可以加上一些处理,根据需要
end;
end;
finally
formstyle.free;
end;
form1 : Tform1;
OldApp : Tapplication;
procedure showme(App : Tapplication);stdcall;
procedure reApp();stdcall;
implementation{$R *.dfm}
procedure showme(App : Tapplication);stdcall;
var
Cform : Tform1;
begin
oldapp := application;
application := app;
form1 := Tform1.create(app.MainForm);
form1.show;
.......
.......
end;
procedure reApp();stdcall;
begin
application := OldApp;
end;
end.