DBGrid中如何让回车变为光标右移动?

解决方案 »

  1.   

    procedure TForm.DBGrid1KeyPress(Sender: TObject; var Key: Char);
    var
        EndCol : Integer;
    begin
        EndCol := DBGrid.Columns.Count - 1;
        if Key = #13 then
        begin
            Key := #0;
            with DBGrid.DataSource.DataSet do
            begin
                 if DBGrid.SelectedIndex <> EndCol then
                 begin
                      DBGrid.SelectedIndex := DBGrid.SelectedIndex + 1;
                 end
                 else
                 begin
                      Next;
                      if not Eof then
                      begin
                           DBGrid.SelectedIndex := 0;
                      end;
                 end;
            end;
        end;
    end;
      

  2.   

    用不着那么麻烦:
    在Form.OnKeyPress事件中写如下代码:
    if Key =#13 then 
    if ActiveControl = DBGrid1 then begin 
    TDBGrid(ActiveControl).SelectedIndex := TDBGrid(ActiveControl).SelectedIndex + 1; 
    Key := #0; 
    end; 
      

  3.   

    在form的onkeypress:
    if Key = #13 then 
    if ActiveControl = DBGrid1 then begin 
    TDBGrid(ActiveControl).SelectedIndex := TDBGrid(ActiveControl).SelectedIndex + 1; 
    Key := #0; 
    end;