在线急等(Dll调用)!!!

lishan200012 2007-07-25 04:09:24
我把Form1、Form2封装到了同一个Dll中。
Form1和Form2的关系是Form1需要调用Form2。
请问,如何实现?
...全文
148 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lishan200012 2007-07-26
  • 打赏
  • 举报
回复
经过多次修改已经解决。
lishan200012 2007-07-26
  • 打赏
  • 举报
回复
谢谢 hongqi162(失踪的月亮)!
已经解决了90%的问题了。
Form2需要利用Form1中Ado1,修改DBedit1中数据。怎么修改?
lishan200012 2007-07-26
  • 打赏
  • 举报
回复
那Form1中AdoConnection能给Form2使用吗?
hongqi162 2007-07-25
  • 打赏
  • 举报
回复
逻辑混乱,你应该在form2中定义一个属性来接收edit1.text
form2中定义一个ID属性
private
FID: string;
{ Private declarations }
public
{ Public declarations }
procedure loaddata;
property ID:string read FID write FID;

end;


//form1中调用
with TForm2.Create( Owner ) do
begin
ID:=Edit1.text;
loaddata;//添加这个过程,就不能调用Form2了。怎么解决?
ShowModal;
Destroy;
end;
lishan200012 2007-07-25
  • 打赏
  • 举报
回复
在loaddata中使用了Form1中Edit1.text的信息。这样会有问题吗?
另外Form1中的一些信息能直接给Form2使用吗?
hongqi162 2007-07-25
  • 打赏
  • 举报
回复
loaddata是form2中的public方法吗?如果是的话应该是没有问题的,可能是loaddata中有问题,因为form2已经被实例化了,已经可以访问了
lishan200012 2007-07-25
  • 打赏
  • 举报
回复
谢谢hongqi162(失踪的月亮)!
问题解决了。
但是我在Form2中有一个过程需要在Form2.ShowModal;之前调用。
procedure TForm1.Button1Click(Sender: TObject);
begin
with TForm2.Create( Owner ) do
begin
loaddata;//添加这个过程,就不能调用Form2了。怎么解决?
ShowModal;
Destroy;
end;
end;
pengxuan 2007-07-25
  • 打赏
  • 举报
回复
跟在一般的工程里窗体间调用是一样的
hongqi162 2007-07-25
  • 打赏
  • 举报
回复
uses Unit2;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
with TForm2.Create( Owner ) do
begin
ShowModal;
Destroy;
end;
end;

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧