dbgrid的cell有text属性不?比如当我双击dbgrid中的某一记录时,要把这条记录的“编号”的值赋给edit1.text的代码该如何写?dbgrid的双击事件是哪一个?是oncellclick吗? 忘了说明一下,“编号”是字段名,我的意思是把“编号”下的记录的值(如12345)赋给edit.text。顺便问一下:对edit1中的值进行查找是怎么写的?是table1.findbykey([edit1.text]) 还是什么了? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 其实就是把选中的网格中的数据值赋给edit.text。一定给分的。 edit1.Text:=DBGrid1.SelectedField.AsString edit1.Text:= IntToStr(DBGrid1.Fields[编号].AsInteger);DBGrid1DblClick 双击 chlei(chlei) :如果字段类型是A的话呢,IntToStr(DBGrid1.Fields[姓名].AsInteger);是不行的吧?再比如是DATE类型呢?能否讲讲各种类型是如何转换的?请两位一定到我讲的帖子上挂个号,一定。 其实我是想在网格某一格上双击的时候,把这一行的值分别赋给好几个edit.text。因此想问一下其它类型的字段是如何转换的。 所以直接就用asstring就可以了,不需要画蛇添足。 我是想一次双击就够了,不用一个个的赋过去。要是用你那种方法,并不能把多个字段名下的值分别赋给各个edit.text. 可是你怎么能让用户确定的他选的是几个字段?如果是所有字段 for i:=0 to DBGrid1.DataSource.DataSet.FieldCount-1 dobegin memo1.Lines.Add(DBGrid1.DataSource.DataSet.Fields[i].asstring);end; 我用的是dbgrid,我不是把字段名的值赋给一个memo,而是分别赋给多个edit。比如:字段名: 编号 姓名 出生年月记录: 2345 张xx 1978-07-08当我双击“2345”或“张xx”或“1978-07-08”时,就能分别把2345、张xx、1978-07-08赋给edit1.text、edit2.text、edit3.text去。原来已在dbgrid的字段编辑器中加入所有的字段,dbgrid中显示的是用query查询出的记录。如果用edit1.Text:= IntToStr(DBGrid1.Fields[0].AsInteger);edit2.Text:= IntToStr(DBGrid1.Fields[编号].AsInteger);edit3.Text:= IntToStr(DBGrid1.Fields[编号].AsInteger);就可以实现了。用你的方法是如何做的呢? 是edit2.Text:= IntToStr(DBGrid1.Fields[2].AsInteger);edit3.Text:= IntToStr(DBGrid1.Fields[3].AsInteger); 哪里有ICO格式的工具按钮图标? UDP端口受限问题 bitblt和getpixel哪个更效率 大家来总结一下搞DELPHI的工资待遇,是不是真的该换语言了。 使用udp连接的问题! 关于ExpressNavBar和ExpressQuantumGrid的安装 关于access的问题 在标签中输入了一些中文字,可是不能完全显示! 如何使用SPY++? 请问如何用ado来得到access2000指定表的字段列表,谢谢 sql返回的内容,我看不出有什么错,可是总是报错”无效列名”,请帮我看一下 各位仁兄,为什么我做的管理软件个不大,占系统的资源挺大?
请两位一定到我讲的帖子上挂个号,一定。
如果是所有字段
for i:=0 to DBGrid1.DataSource.DataSet.FieldCount-1 do
begin
memo1.Lines.Add(DBGrid1.DataSource.DataSet.Fields[i].asstring);
end;
字段名: 编号 姓名 出生年月
记录: 2345 张xx 1978-07-08
当我双击“2345”或“张xx”或“1978-07-08”时,就能分别把2345、张xx、1978-07-08赋给edit1.text、edit2.text、edit3.text去。
原来已在dbgrid的字段编辑器中加入所有的字段,dbgrid中显示的是用query查询出的记录。
如果用edit1.Text:= IntToStr(DBGrid1.Fields[0].AsInteger);
edit2.Text:= IntToStr(DBGrid1.Fields[编号].AsInteger);
edit3.Text:= IntToStr(DBGrid1.Fields[编号].AsInteger);
就可以实现了。用你的方法是如何做的呢?
edit3.Text:= IntToStr(DBGrid1.Fields[3].AsInteger);