delphi DBGrid 如何获取当前选中行的某个字段的值
作者&投稿:骆家 (若有异议请与网页底部的电邮联系)
先添加一个datasource的控件,如datasource1,把DBGrid属性中的datasource属性选择datasource1.假设你的连接的数据集名称是是Query1,你可以在Formshow里面下代码: Datasource1.dataset := Query1; if Query1.Active then Query1.Close; Query1.sql
DBGrid的SelectedField成员存放当前选中的字段,即出于DBGrid中的当前行、当前列的字段
只需要在DBGrid的OnDblClick事件中如下写即可:
procedure DBGrid1.OnDblClick(Sender : TObject);
begin
Edit1.Text := TDBGrid(Sender).SelectedField.Text;
end;
比如在query的afterscroll事件里写赋值代码,edit1.text:=fieldbyname('id').asstring;
DataModule1.UniQuery3.Fieldbyname('字段名').AsString;/
dbgrid.fields[第几个字段].value;
以爱伊丁: 先添加一个datasource的控件,如datasource1,把DBGrid属性中的datasource属性选择datasource1.假设你的连接的数据集名称是是Query1,你可以在Formshow里面下代码: Datasource1.dataset := Query1; if Query1.Active then Query1.Close; Query1.sql.clear; Query1.Sql.Add('select * from [表名]'); Query1.Open; 这样就可以了.
永福县17540891794: DELPHI获取另一个窗体中的DBGRID的数据问题 - ?
以爱伊丁: 按下列步骤来写即可达到效果 1、把第二个窗体以Showmodal的方式打开; 2、第二个窗体定义品号,品名,规格三个只读属性,完成Get方法 3、第一个窗体按钮事件里面写 第二个窗体假设为form2,第一个窗体的DBGrid关联的数据集假设为AdoQuery1 form2 :=Tform2.Create; if(form2.ShowModal = mrOK) then beginAdoQuery1.Edit;AdoQuery1.fieldbyName(品名).Asstring:=form2.品名;//逐个给字段赋值;................AdoQuery1.Post; end; form2.free;
永福县17540891794: 如何使用delphi中的DBGrid控件 - ?
以爱伊丁: DBGrid在控件页Data Controls 中的第一个,先点击DBGrid,然后再在到窗体上点击一下,它就可以添加到窗体上了!
永福县17540891794: delphi DBGrid 如何获取当前选中行的某个字段的值?
以爱伊丁: //当前选中行的某个字段的值 var a:integer; //定义1个变量 begin a:=strtoint(edit1.Text)-1; //字段的位置1.2.3...... //-1因为字段是从0开始的 //字段1等于计算机的字段0 edit2.Text:=adoquery1.Fields[a].Value; //将字段的内容显示到文本中 end; //当前选中行的某个字段(主键)的值 begin edit1.Text:=adoquery1.Fields[0].AsString; end;
永福县17540891794: delphi7 dbgrid如何获取当前选中行的设置为隐藏字段的值 - ?
以爱伊丁: 是dbgrid就应该是和数据库的表有关联,也就是用了query或table做了查询,当然显示可以依靠query或table来实现.比如在query的afterscroll事件里写赋值代码,edit1.text:=fieldbyname('id').asstring;
永福县17540891794: delphi中选择行获取dbgrid值是用 oncellclick事件,但用键盘上的方向键选中行却没法获取值 - ?
以爱伊丁: delphi 的 AdoQurey 与 dbgrid 是数据感知控件,即当在 dbgrid 中移动行时,与之相关联的的 adoQuery 记录指针也会相应移动.上面的 edit 控件可以用 dbEdit 控件代替,可以即时的反映出数据记录的变化,可以节省代码.如果想响应记录行的...
永福县17540891794: delphi7中的dbgrid组件在哪里啊??? - ?
以爱伊丁: dataControls 里面的 第一个 叫你一招 view -> components list ->然后直接输入名字就会有了
永福县17540891794: delphi 如何获取TBgird中某个单元格内容?
以爱伊丁:DBGrid1.DataSource.DataSet.RecNo:= 1; //从1开始 ShowMessage(DBGrid1.DataSource.DataSet.Fields[0].Value); //从0开始 只能这样实现,应为DBGrid为了提高效率 他是显示多少绘制多少不显示的部分其实是没有绘制的所以取不到内容
永福县17540891794: Delphi中如何提出Dbgrid中某行和某列的值 - ?
以爱伊丁: DBGrid的SelectedField成员存放当前选中的字段,即出于DBGrid中的当前行、当前列的字段 只需要在DBGrid的OnDblClick事件中如下写即可: procedure DBGrid1.OnDblClick(Sender : TObject); beginEdit1.Text := TDBGrid(Sender).SelectedField.Text; end;
永福县17540891794: delphi如何直接向DBgrid输入数据 - ?
以爱伊丁: 不用管DGBrid,直接把数据post到DataSet里面,刷新一下DataSet就行了.也可以不用Edit,直接在DBGrid里输入,然后换行.前提是DBGrid的DataSource设置为一个DataSource1,DataSource1的DataSet设置为一个ADODataSet1,AdoDataSet1的TableName设置为表的名字,Active设置为True.