Delphi里怎么将DBGrid的数据取出传递到类成员中?

是这样的,比如我定义了一个类叫Base_info,类成员等就是姓名,性别,年龄,电话...等一些基本个人信息,和数据库里的表的相关内容相对应,然后把这些定义好的类放在一个... 是这样的,比如我定义了一个类叫Base_info ,类成员等就是姓名,性别,年龄,电话...等一些基本个人信息,和数据库里的表的相关内容相对应,然后把这些定义好的类放在一个单元base.pas里。

程序的功能是,在窗体上点击查询按钮将信息在DBGrid里显示出来,然后双击单元格可以进入编辑界面,对某一条基本信息进行编辑。
现在就想知道,怎么把DBGrid里的值取出来传给类成员呢?
我知道可以定义一些变量 如Var text:string;
text:= dbgrid1.DataSource.DataSet.FieldByName('id').AsString;
然后再将值赋给相应的编辑框,
edit1.Text := text1;

但现在要求不这样,要用类成员来传递这些值,具体应该怎么做呢?是不是要用到什么GET方法SET方法呢,我很小白,望各位高手指点!
我大概懂你的意思了了,不过这么一来我的类成员里有几个成员不是就要写几个PROCEDURE?如果还有另一个类,也要同样的操作,那么就得重写一遍?
还有,我定义类的时候没有把成员定义为Private的啊,是不是不写的话就会默认为Private?
展开
 我来答
wwj_jb224
2009-04-01 · TA获得超过196个赞
知道小有建树答主
回答量:131
采纳率:0%
帮助的人:138万
展开全部
你大概是想把值先赋给类的成员变量吧
而且你的成员放在了PRIVATE区不能直接盯燃用,那就用属性+函数的形式来访问吧。。不过你的成员变量太多写起来可够多的比如:
Base_info = class
Private
Fname:string;
Fsex:string;
procedure SetName(value:string);
procedure SetSex(value:string);
published
Property name:string; read Fname write SetName;
Property sex:string; read Fsex write SetSex;
end;

procedure Base_info.SetName(value:string);
begin
Fname:=value;
end;
procedure Base_info.SetSex(value:string);
begin
Fsex:=value;
end;

比樱穗如你创建一个类的实例Myinfo:=Base_info.create这样你给类变量赋脊则卜值就直接
Myinfo.name:=dbgrid1.DataSource.DataSet.FieldByName('id').AsString;
Myinfo.Sex:=dbgrid1.DataSource.DataSet.FieldByName('Sex').AsString;

是这个意思吧...
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式