如何能随时得到鼠标地位置
如 我在Buttonclick事件中怎样才能得到当前鼠标地位置呢?
不要有全局变量地方式
我要实现在某几个特定控件点击后显示一个选择时间地控件。

解决方案 »

  1.   

    var P:TPoint;
    如:procedure TForm1.BitBtn6MouseDown(Sender: TObject;
      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    var P:TPoint;
    begin
      P.x:=X;
      P.y:=Y;
      P:=BitBtn6.ClientToScreen(P);
      PopupMenu1.Popup(p.x,p.y);
    end;
      

  2.   

    procedure Button1Click(Sender: TObject);
    var
      CurPos: TPoint;
    begin
      CurPos := GetCursorPos;
    end;
      

  3.   

    得到的位置是相对于屏幕的还是相对于窗体的?
    如何把一个Monthdate控件和电机了的那个控件对齐显示出来呢?
      

  4.   

    可以试一试这些代码:
    var APoint: TPoint;
    ...
      GetCursorPos(APoint);
      Windows.ScreenToClient(你的子窗体.Handle, APoint); //现在,APoint已转换成子窗体的Client坐标。
    ...