Deiphi中Form1与Form2窗体传值问题

来源:百度知道 编辑:UC知道 时间:2024/06/07 17:07:45
有FORM1,FORM2 2个窗体
我在FORM2窗体的DBGRID里选择一条记录 然后关闭FORM2窗体 在FORM1窗体EDIT显示记录

以下Form2窗体里写的公共函数
public Function ckcs(csdm,csmc:String ):String; //定义的公共函数

Function Tform2.ckcs(csdm,csmc:string):string ;
begin
csdm :=dbgrid2.DataSource.DataSet.FieldValues['storageID'];
csmc :=dbgrid2.DataSource.DataSet.FieldValues['storageName'];
result:= csdm+csmc;
end;

Form1 窗体里调用

procedure Tform1.Edit1Click(Sender: TObject);
var
c1,c2:String;
begin
edit1.Text :=unit1.Form2.ckcs(c1,c2);

end;

请各位高手指教 帮帮我

我在
FORM2窗体
showmessage(unit1.Form1.ckcs(csdm,csmc)); 能显示出传的2个值

FORM2窗体关闭

FORM1窗体中的EDIT文本里没显示

form2关闭了,它里面的dbgrid的数据源肯定也关掉了,
dbgrid2.DataSource.DataSet.FieldValues['storageID']; 这句是找不到数据的
你在form2还没关闭的时候把想要找的数据存放到一个公共变量里