delphi7 调用dll中的窗体在主窗体上的panel上显示!!(30分相送) 建立一个窗体form1,用dll封装。在主窗体mainform中调用dll窗体,并且在mainform上的panel中显示!!我是新手,老大们要详细点的答案!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 将封装窗体的Parent设置成form1试试看 用parent属性设置是不行的,应该这样解决:DLL里面要传入主程序的Application,用这个替换DLL的Application(注意在释放DLL的时候要恢复这个Application),然后这样Application创建窗体并返回给主程序。主程序得到窗体之后,不能使用DllForm.Parent:=ExeForm.Panel1,而是要使用API函数:windows.SetParent(DllForm.Handle,ExeForm.Panel.Handle);用这句就可以显示在Panel上了 zzn2007我想给你加分,我怎么无权限? 呵呵,这个我就不清楚了,你需要问问管理员了。不要高兴太早,后续还有很多维护的这个DLL窗体的工作要做呢!比如,焦点在Dll Form上,主程序的标题栏变灰、程序切换出去,会切换不回来,Dll Form的控件步伐显示Hint、按下Alt+Tab不显示主程序应用图标我自己解决了一些,还有一些没找到答案呢,呵呵,有时间好好研究研究 楼上我也有这样的问题,您是怎么解决的,窗体停在Panel上按钮的提示信息不显,怎么办。 Fastreport动态交叉表 Delphi中关于数据库集组件的使用 如何在点下按钮时驱动声卡? 虽然最近对delphi的网络版块有些失望,但是还是想提问,有谁使用过id的snmp控件与开发,给我一些意见吧. delphi程序可以运行,任务管理器中可以看到,但在任务栏中不显示也不生成exe.这是怎么回事啊? 如何单击LABEL控件以后连接到该网站 如何同时拥有C++ BUILDER 6.0 和 DELPHI 6.0 求助 悬赏《Delphi5 技术手册》下载 你知道枚举进程有哪些方法吗? delphi操作word的编号 重分求FastReport控件
DLL里面要传入主程序的Application,用这个替换DLL的Application(注意在释放DLL的时候要恢复这个Application),然后这样Application创建窗体并返回给主程序。
主程序得到窗体之后,不能使用DllForm.Parent:=ExeForm.Panel1,而是要使用API函数:
windows.SetParent(DllForm.Handle,ExeForm.Panel.Handle);用这句就可以显示在Panel上了
不要高兴太早,后续还有很多维护的这个DLL窗体的工作要做呢!比如,焦点在Dll Form上,主程序的标题栏变灰、程序切换出去,会切换不回来,Dll Form的控件步伐显示Hint、按下Alt+Tab不显示主程序应用图标我自己解决了一些,还有一些没找到答案呢,呵呵,有时间好好研究研究