大家看我这个DLL窗体问题怎么解决?(300分)

  • 主题发起人 主题发起人 zdqyundou
  • 开始时间 开始时间
Z

zdqyundou

Unregistered / Unconfirmed
GUEST, unregistred user!
我的程序设计为MDI,子窗体打包在DLL文件中,子窗体上有一个Edit2,它的Text为123,那么当我打开子窗体并且改动了Edit2的Text值后,关闭子窗体,我需要让主窗体上的某个Edit的Text值等于刚才子窗体上那个Edit2的Text值,怎么办?
 
MDIChild关闭时,发一个消息给MDIForm, 由MDIForm处理消息即可
 
能简单写一下吗?我是新手
 
我没有测试,看是不是可以这样,在你的dll定义这样一个过程。
var dll_tt:tedit;//在dll中的临时变量。
procedure ttt(t:TEdit);
begin
dll_tt:=t;
end;
你在主窗口载入dll,显示dll中form的之前,使用上面的过程把在mainfrom上的edit1传递过去,ttt(Edit1);
当你关闭dll中的form的之前,使用dll_tt.text:=edit2.text ,
没有测试的代码,可以试试看是否可以成功。
 
我的目的并不是打开子窗体时,子窗体的Edit要从主窗体上取值,而是子窗体关闭后,他的Edit值要传到主窗体上去
 
可不可以每次修改子窗体的Edit之后就把值传给主窗体呀,不等到关闭的时候。
 
我使用你的demo做了一个测试,已经测试成功。你在线的时候传递给你。
使用的就是我上面说的,定义了一个过程传递主from上的edit,这样可以在dll中的form和主form之间的edit 进行数据传递。
 
多人接受答案了。
 
后退
顶部