用 ClientToScreen,或 ScreenToClient进行转换坐标;

解决方案 »

  1.   

    如果没有设置popupmenu的x,y参数,默认应该是在鼠标点击的地方。
      

  2.   

    为什么不用AUTOPOPUP啊。简单多了吗!
      

  3.   

    我只是用了OnPopup(X,Y)一句啊,不知道怎么搞的,那个菜单总是和我的鼠标差的太远,根本就不在窗口内!估计是坐标转换的问题。可是Delphi有TPoint类吗(VC有一个CPoint类)?
      

  4.   

    有,定义如下
    type TPoint = packedrecord
      X: Longint;
      Y: Longint;
    end;
      

  5.   

    转换一下坐标用 ClientToScreen,或 ScreenToClient
      

  6.   

    多谢,可是各位大侠,你们在一个对话框工程中弹出一个TPopupMenu的时候,是不是用一句OnPopup(X,Y)就可以了啊?
      

  7.   

    呵呵,解决了,是坐标系的问题,谢谢qiubolecn(来自差生市) 大侠,也谢谢各位!