procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char); begin if key <> #13 then exit; //模拟TAB键 KeyBd_Event(VK_TAB,0,0,0); KeyBd_Event(VK_TAB,0,2,0); end;
没有效果,在DBGRID中TAB键无法使用
if (Key=VK_SPACE) and (WinControl is TDBGrid) then with TDBGrid(WinControl) do if SelectedIndex<(FieldCount-1) then SelectedIndex := SelectedIndex + 1//increment the field else begin SelectedIndex := 0; if not TDBGrid(WinControl).DataSource.DataSet.Eof then TDBGrid(WinControl).DataSource.DataSet.Next else TDBGrid(WinControl).DataSource.DataSet.First; end;
begin
if key <> #13 then exit;
//模拟TAB键
KeyBd_Event(VK_TAB,0,0,0);
KeyBd_Event(VK_TAB,0,2,0);
end;
with TDBGrid(WinControl) do
if SelectedIndex<(FieldCount-1)
then SelectedIndex := SelectedIndex + 1//increment the field
else begin
SelectedIndex := 0;
if not TDBGrid(WinControl).DataSource.DataSet.Eof
then TDBGrid(WinControl).DataSource.DataSet.Next
else TDBGrid(WinControl).DataSource.DataSet.First;
end;