procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char); begin if key = #13 then begin if dbgrid1.SelectedIndex < dbgrid1.FieldCount - 1 then dbgrid1.SelectedIndex := dbgrid1.SelectedIndex + 1 else begin adoquery1.Append; dbgrid1.SelectedIndex := 0; end; end; end;
to winsock2000(风筝): 不行,焦点没有脱离表格,前面加个showmessage('ok')才可以自己解决了。
DataSource.DataSet.FieldbyName('第一个字段').FocusControl;
焦点跳到第一个单元格~
begin
if key = #13 then
begin
if dbgrid1.SelectedIndex < dbgrid1.FieldCount - 1 then
dbgrid1.SelectedIndex := dbgrid1.SelectedIndex + 1
else
begin
adoquery1.Append;
dbgrid1.SelectedIndex := 0;
end;
end;
end;
不行,焦点没有脱离表格,前面加个showmessage('ok')才可以自己解决了。