1

如果我将 DragMode 设置为 dmAutomatic,它会阻止我选择行。如果我使用 OnCellClick 调用 BeginDrag,它只会在鼠标抬起时触发,我认为这不是拖动。如果我使用 OnMouseDown 它只会在标题行上触发。

我该怎么做?

4

1 回答 1

2

重载 MouseDown 将导致所需的结果。

type
  TDBGrid=Class(DBGrids.TDBGrid)
         procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
  End;


  TForm2 = class(TForm)
    .......
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

{ TDBGrid }

procedure TDBGrid.MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  Begindrag(false);
  inherited;
end;
于 2013-05-28T16:21:17.870 回答