我要选定dxDBGrid中所选定的记录,自动传给参数,数据库根据此参数,在ondbclick来查询~
 请问符合动态读取dxDBGrid中所选定的记录??

解决方案 »

  1.   

    通过数据集读取
    比如 dxDBGrid ,连接一个adodataset
    adodataset.FieldByName('字段名').AsString即为光标所在行的某个字段的值
      

  2.   

    for i:=0 to dxDBGrid1.SelectedCount - 1 do
     begin
        for j:=0 to dxDBGrid1.ColumnCount-1 do
            ShowMessage(dxDBGrid1.SelectedNodes[i].Strings[j]);
     end;
    //////////////////////////////////////////////////////////////
    var
      bm : TBook;
      i,j : Integer;
    begin
     for i:=0 to dxDBGrid1.SelectedCount - 1 do
     begin
       bm := TBook(dxDBGrid1.SelectedRows[i]);
       ClientDataSet1.GotoBook(bm);
       for j:=0 to ClientDataSet1.FieldCount-1 do
          ShowMessage(ClientDataSet1.Fields.Fields[j].AsString);
     end;
    end;
      

  3.   

    在dbgrid的options属性dgRowSelect属性为true
      

  4.   

    当前记录你只要取数据源的记录号.如果adoqry.fieldbyname('xx').asstring;
    就可以了.
      

  5.   

    //一句即可 , 
    dxDBGrid.FocusedNode.Values[TdxDBGridColumn.Index];
      

  6.   

    edit1.Text:=dxdbgrid1.FocusedNode.Values[2];查询结果出来后,只能显示第一条纪录的,不能跟鼠标动态选择啊!!
      

  7.   

    //下语句意思是获得置光标那行的某列数据,其中
    //values[index]的index为dxdbgrid1中的列的编号index,
    //可以动态取得dxfilename.indexdxdbgrid1.FocusedNode.Values[dxfilename.index];