在DBGRID的双击事件中加入如下代码,目的是双击一条记录时取对应记录的各项信息procedure TFChld_Parent1.DBGrid1DblClick(Sender: TObject);
var li_TypeCode,i,j:Integer; ls_TypeName: String;
begin
inherited;
// DBGrid1.Refresh;
if DBGrid1.SelectedRows.Count>0 then
with DBGrid1.DataSource.DataSet do
for i:=0 to DBGrid1.SelectedRows.Count-1 do
begin
GotoBook(pointer(DBGrid1.SelectedRows.Items[i]));
//ls_TypeName := '';
for j := 0 to Fieldcount - 1 do
begin
ls_TypeName := ls_typeName + Fields[j].AsString + ',';
Edit1.Text := ls_TypeName;
end;
ls_TypeName := '';
end;end;但是DBGrid1.SelectedRows.Count始终为0,不知原因,请问可能是哪些原因?
var li_TypeCode,i,j:Integer; ls_TypeName: String;
begin
inherited;
// DBGrid1.Refresh;
if DBGrid1.SelectedRows.Count>0 then
with DBGrid1.DataSource.DataSet do
for i:=0 to DBGrid1.SelectedRows.Count-1 do
begin
GotoBook(pointer(DBGrid1.SelectedRows.Items[i]));
//ls_TypeName := '';
for j := 0 to Fieldcount - 1 do
begin
ls_TypeName := ls_typeName + Fields[j].AsString + ',';
Edit1.Text := ls_TypeName;
end;
ls_TypeName := '';
end;end;但是DBGrid1.SelectedRows.Count始终为0,不知原因,请问可能是哪些原因?
我试了一下,双击能且只能有一行被选中,除非用左键选择,右键双击,
注:dbgrid.option要选择dgrowselect和dgmultiselect,这样击起来也比较方便。