delphi dll窗体返回主程序窗体

 我来答
小小睬涝8
2013-12-21 · 超过71用户采纳过TA的回答
知道答主
回答量:138
采纳率:100%
帮助的人:65.5万
展开全部
DLL中窗体的Owner是什么?还有窗体的构造函数是怎么写的?“如果想从DLL窗体中返回主程序窗体”这句不是十分理解,能解释一下吗? 追问: DLL中窗体的Owner 没有我想的是 DLL窗体显示出来以后 如果密码错误等问题 要返回登陆窗体 登陆窗体是调用该DLL的dll:procedure showform(LL_id:string);beginApplication.CreateForm(TFuser_list, Fuser_list); fuser_list.Caption:=ll_id+'在线'; my_id:=ll_id; Fuser_list.Show ; //连接数据库 获取好友列表 end; 回答: DLL构造窗体的时候最好把主窗体的指针作为Owner:TComponent传递过来,然后你可以通过use主窗体操作主窗体(Owner)了var Fuser_list:TFuser_list;begin Fuser_list := TFuser_list.Create(Owner);end; 补充: 你也可以把DLL构造出来的窗体指针返回给主窗体的。不好意思Dephi不怎么会用,原理是这样的,代码上帮不上太多。 追问: 什么是use主窗体? 如果主窗体已经释放了? 还能再显示出来? 回答: 把主窗体的.pas拷贝到dll目录下,然后use主窗体类,在DLL的窗体就可以操作主窗体里的元素了啊 主窗体释放Application就结束了吧,DLL的窗体也会关掉的 补充: 等下我得找找,以前做过一个C++Builder的 补充: int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved){return 1;}//--------------------------------------------------------------------------- extern "C" __declspec(dllimport) TForm * __stdcall ShowLogonForm(TComponent* Owner); //---------------------------------------------------------------------------
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式