当前位置:主页>销售管理软件> 列表

封装在DLL里的FORM被调用出来时,左上角无主程序的的图 找服装进销存表格

记账软件版1楼: 在DLL里:
function OpenDefineDLTemplate(Ahandle:Thandle;Conn:TAdoConnection):longint;stdcall;
begin
Application.Handle:=Ahandle;
DefineDLTemplateFrm:=TDefineDLTemplateFrm.Create(application);
Result:=longint(DefineDLTemplateFrm);
DefineDLTemplateFrm.ADOQuery1.Connection:=Conn;

DefineDLTemplateFrm.ShowModal;
end;
在主程序里:
procedure TTraceMainFrm.DefineDateCodeLotNoFormat1Click(Sender: TObject);
type
TOpenDefineDLTemplate=function(Ahandle:Thandle;Conn:TAdoConnection):longint;stdcall;
var
LibHandle:THandle;
OpenDefineDLTemplate:TOpenDefineDLTemplate;
begin
LibHandle:=LoadLibrary(''MRInputLib.dll'');
try
if LibHandle=0 then
raise Exception.Create(''Error occur!Can not load library "MRInputLib.DLL"'');
@OpenDefineDLTemplate:=GetProcAddress(LibHandle,''OpenDefineDLTemplate'');
if @OpenDefineDLTemplate=nil then
raise Exception.Create(''Error occur! Can not open "Define Template"'')

else
OpenDefineDLTemplate(Application.Handle,DataM.ADOConn);
finally
FreeLibrary(LibHandle);
end;

end;

2楼: Ahandle:Thandle 换成 Application 一起传进来 如服装进销存表格

3楼: 把Application传进来

4楼: Dll里面的窗体的图标跟Application和句柄都没有关系吧。
手动在设计的时候给该DLL窗体添加一个图标就可以了,不然在该窗体Create事件里面载入图标也可以的啊。

5楼: 传递主程序的Application对象就可以了。
呵呵

6楼: 我也遇到过个问题
在设计的时候直接为窗体指定个图标就好了

记账软件版7楼: 帮顶!

http://www.source520.com

站长开发推广同盟 站长朋友的终极驿站
同时拥有海量源码电子经典书籍下载

http://www.source520.com/search/search.asp

"编程.站长"论坛搜索引擎-----为中国站长注入动力!