這樣做的目的是如果雙擊在DDGrid空白處,則新增一條記錄否則修改此條記錄.

解决方案 »

  1.   

    不是有个OnCellClick的事件吗,点在记录上就会触发此事件,空处则不会。
      

  2.   

    在oncellclick
    if adoquery.fieldbyname('field').asstring='' Then
      showmessage('无');
      

  3.   

    楼上的是对的,但是会不会有意外造成判断不准确就难说了,
    不过我更改一下他的代码
    if DBGrid1.DataSource.DataSet.fieldbyname('field').asstring='' Then
         showmessage('无');也可以try一下这个:
    if DBGrid1.SelectedRows.Count < 0 then
        showmessage('无');
      

  4.   

    Fields[0]...就可以了;
    DBGrid -> Fields
      

  5.   

    procedure TXXXForm.DBGridDblClick(Sender: TObject);
    Var
      Point :TPoint;
      GridCoord :TGridCoord;
    begin
      GetCursorPos(Point);
      Point := DBGrid.ScreenToClient(Point);
      GridCoord := DBGrid.MouseCoord(Point.x, Point.y);
      // X, Y 是行和列
      If (GridCoord.Y <> 0) And (GridCoord.X <> 0) Then
        // yours code
    end;