我打开form1,又打开form2,怎么能从form2返回信息给form1?
form1中已经引用了form2所在单元
delphi中form间信息传递
答案:4 悬赏:60 手机版
解决时间 2021-03-25 19:58
- 提问者网友:谁的错
- 2021-03-25 11:23
最佳答案
- 五星知识达人网友:等灯
- 2020-06-27 15:03
Click(Sender: TObject);
begin
Edit1.Text:=Form1.Label1.Caption;//取Form1的Label1值给Edit1
Form1.Label1.Caption:=Edit1.Text; //把Edit1的值还给Form1的Label1
Form2.Close;
end;
//这样的话,一来一回,相当于只改变了Form2的Edit1的值为Form1的Label1的Caption,Form1的Label1并没有什么变化,你只需要把:
Edit1.Text:=Form1.Label1.Caption;这句去掉就可以了变成:
procedure TForm2.Button1Click(Sender: TObject);
begin
Form1.Label1.Caption:=Edit1.Text; //把Edit1的值赋值给Form1的Label1
Form2.Close;
end;
begin
Edit1.Text:=Form1.Label1.Caption;//取Form1的Label1值给Edit1
Form1.Label1.Caption:=Edit1.Text; //把Edit1的值还给Form1的Label1
Form2.Close;
end;
//这样的话,一来一回,相当于只改变了Form2的Edit1的值为Form1的Label1的Caption,Form1的Label1并没有什么变化,你只需要把:
Edit1.Text:=Form1.Label1.Caption;这句去掉就可以了变成:
procedure TForm2.Button1Click(Sender: TObject);
begin
Form1.Label1.Caption:=Edit1.Text; //把Edit1的值赋值给Form1的Label1
Form2.Close;
end;
全部回答
- 1楼网友:掌灯师
- 2019-09-22 04:10
1. 先在 fastreport 中定义一个对应的变量: aa;
2. 在 frreport 的 getvalue 事件中加入如下代码:
if parname = 'aa' then parvalue := a; // 即把 form 中的变量 a 的值传递给 report中的变量 aa , 然后就可以在报表中使用了.
- 2楼网友:十鸦
- 2020-05-23 22:23
没有这么麻烦吧,这个问题的正解应该是定义一个全局变量,就可以实现了.。
如果要在form1中显示刷新,那么在form1的OnActivate事件中刷新就可以了。
如果要实时刷新,在form2的找码中加入form1.label.caption:=XXX就搞定了。
- 3楼网友:行雁书
- 2020-12-12 21:13
一个比较简单的方法
form2里引用form1,在form1中声明公共变量用来接收需要返回的信息,然后在form2里面给这个变量赋值就可以了。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯