怎样在dbgrid中感知鼠标双击某一列?
如:
当鼠标双击dbgrid中的“spid”列
即弹出窗口showmessage('');
谢谢

解决方案 »

  1.   

    干么要双击呢,单击用 onTitleClick事件
      

  2.   

    procedure TForm1.DBGrid1CellClick(Column: TColumn);
    begin
      if column.FieldName = 'spid' then showmessage('');
    end;
      

  3.   

    to andyzhou1101:
    是双击产生事件,不是单击。
      

  4.   

    分分少了点,不过代码不算太难
    procedure TForm1.DBGrid1DblClick(Sender: TObject);
    var
            mGridCoord: TGridCoord;
    begin
            mGridCoord := dbgrid1.MouseCoord(MouseX,MouseY);
            ShowMessage(Format('%d %d',[mGridCoord.X,mGridCoord.Y]));
    end;procedure TForm1.DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
            MouseX := X;
            MouseY := Y;
    end;
      

  5.   

    procedure TForm1.DBGrid1DblClick(Sender: TObject);
    begin
      if DBGrid1.SelectedIndex >= 0 then Exit;
      Caption := DBGrid1.Columns[DBGrid1.SelectedIndex].FieldName;
    end;
      

  6.   

    procedure TForm1.DBGrid1DblClick(Sender: TObject);
    begin
      if DBGrid1.SelectedIndex >= 0 then Exit;
      Caption := DBGrid1.Columns[DBGrid1.SelectedIndex].FieldName;
    end;