Form1和Form2点击form1的某按钮触发事件
form2.edit1.text:='456';
form2.show;这时打开的Form2的edit1里面有值:456但我为什么无法使用form2里面edit1的值:456?Procedure TForm2.formcreate(sender:Tobject);
begin
  edit2.text:=edit1.text;
end;
结果:edit2没有任何变化.我是新手,学delphi没几天,请各位delphi高手帮帮忙。
谢谢!

解决方案 »

  1.   

    不能放在create里面
    放在show里面
    edit2.text:=edit1.text; 
      

  2.   

    放在show里面活着一起赋值呀
    form2.edit1.text:='456'; 
    form2.edit2text:='456'; 
    form2.show; 
      

  3.   

    也就是说Form2只能是显示Form1传过来的信息吗?
    不能在form2中对form1传过来的值进行操作?
      

  4.   

    窗体的create事件在show之前发生,而此时edit1.text还没有值,就是说还没有执行form2.edit1.text:='456'; 
    放到show事件里执行就可以了
    Procedure TForm2.formshow(sender:Tobject); 
    begin 
      edit2.text:=edit1.text; 
    end;
      

  5.   


    这时得到的值是edit的初始值,并不是Form1传过来的值啊