获取dbgrideh数据行的位置,转换坐标后,修改button按钮的left,top属性,使其移动到指定位置

解决方案 »

  1.   


    能详细点吗  ???怎么获取dbgrideh数据行的位置呢?  还有应该写在dbgrideh 的哪个事件中呢?
      

  2.   

    dbgrideh  的鼠标单击事件
      

  3.   

    能详细点吗  ???怎么获取dbgrideh数据行的位置呢?
      

  4.   

    在 dbgrid的DBGridCellClick 事件中加上:var
      x, y : integer ;
      P: TPoint;
    begin
      GetCursorPos(P);
      Edit1.Text := Format('X: %d, Y: %d',[P.X, P.Y]);
      x := frMainTest.Left ;
      y := frMainTest.Top ;
      Button.Top := P.Y - y - 45 ;
      Button.Left := P.X - x ;
      Button.BringToFront();
    注: Button 的位置,需要根据你放置的容器不同而计算出相对位置。GetCursorPos(P) 获取的是鼠标在屏幕的位置。