我把这些包含在一个函数里
procedure TMainForm.WriteClienData(data:TClienData;ClienForm:TClienForm);
begin data.clienNumber:=ClienForm.NumberEdit.Text;
data.CompanyName:=clienForm.CompanyEdit.Text;
data.Province:=ClienForm.ProductEdit.text;
data.City:=ClienForm.CityComboBox.Text;
data.CompanyAddr:=ClienForm.addressEdit.Text;
data.HomePage:=ClienForm.HomePageEdit.Text;
data.CompanyTele:=ClienForm.CompanyTelEdit.Text;
data.Linkman1:=ClienForm.linker1Edit.Text;
data.Tele1:=ClienForm.L1TelEdit.Text;
data.Mobil1:=ClienForm.L1MobilEdit.Text;
data.Linkman2:=ClienForm.linker2Edit.Text;
data.Tele2:=ClienForm.L2TelEdit.Text;
data.Mobil2:=ClienForm.L2MobilEdit.Text;
data.Meno:=ClienForm.Memo1.Text;
end;
想要修改后的Data,可是返回后访问这个data时是内存访问出错,如何解决呢???
请大家帮帮忙,小弟刚学DELPHI.
procedure TMainForm.WriteClienData(data:TClienData;ClienForm:TClienForm);
begin data.clienNumber:=ClienForm.NumberEdit.Text;
data.CompanyName:=clienForm.CompanyEdit.Text;
data.Province:=ClienForm.ProductEdit.text;
data.City:=ClienForm.CityComboBox.Text;
data.CompanyAddr:=ClienForm.addressEdit.Text;
data.HomePage:=ClienForm.HomePageEdit.Text;
data.CompanyTele:=ClienForm.CompanyTelEdit.Text;
data.Linkman1:=ClienForm.linker1Edit.Text;
data.Tele1:=ClienForm.L1TelEdit.Text;
data.Mobil1:=ClienForm.L1MobilEdit.Text;
data.Linkman2:=ClienForm.linker2Edit.Text;
data.Tele2:=ClienForm.L2TelEdit.Text;
data.Mobil2:=ClienForm.L2MobilEdit.Text;
data.Meno:=ClienForm.Memo1.Text;
end;
想要修改后的Data,可是返回后访问这个data时是内存访问出错,如何解决呢???
请大家帮帮忙,小弟刚学DELPHI.
解决方案 »
- 怎么将一个ADOQuery的数据复制到另一个ADOQuery?
- 请教!!!
- 使用FastReport,为什么无法设置上下左右边距呀!急死了........
- 经纬度与(公里)km怎么换算??
- query怎么和DBGrid关联?怎么和DataSource关联:?
- INTRAWEB作的发布
- 关于jpg格式图像文件的解码,急需,在线等待
- 怎样实现带有checkbox的treeview?(200)
- 怎样用程序实现发送Email,新手请教 :)谢谢谢谢
- 如何利用Tquickrep打印字段较多的表?
- 我用的是ADO组件,想锁定当前记录。请问该怎么设定!?
- 除了cxgrid外,还有那种dbgrid可以实现类似的分组功能
我有试过还是说什么内存访问出错的为什么呢??
aa = record
clienNumber : stirng;
....
end;
TClienData = ^aa;
如果是这样的话,在WriteClienData之前要做 data := new(TClientData);操作分配内,用完后自己释放。如果不是上面这样定义iamcfr(LaoChen)说的方法加个var应该是可以的