模拟鼠标用mouse_event,
speedbutton按钮应该有一个popmenu属性,设置一下就可以了。

解决方案 »

  1.   

    你可以这样写:
    if Button = .. then
      PopupMenu1.Popup(..);
      

  2.   

    我个人认为要实现那种功能,不如用ToolBar来做,里边有MeunItem属性可以搞定。
      

  3.   

    忘了说了,要配合mainmenu控件使用。
      

  4.   

    在TButton的OnClick事件中:
    var
     p:TPoint;
    begin
     GetCursor(p);
     PopMenu1.Popup(p.x,p.y);
    end;
      

  5.   

    在button的Onclick事件中写: PopupMenu1.Popup(..); 
      

  6.   

    应该给c_hk(小李抢刀)加分了。
      

  7.   

    而且getcursor返回的只是一个光标类型!根本不是Tpoint类型!
      

  8.   

    procedure TForm1.SpeedButton1Click(Sender: TObject);
    var
      p:Tpoint;
    begin
      p.x := speedbutton1.Left;
      p.y := speedbutton1.Top ;
      p:=form1.ClientToScreen(p);
      popupmenu1.Popup(p.x+2,p.y+2);
    end;
      

  9.   

    to sandAhrow(超人狄加) 
    只是笔误而已,应该是GetCursorPos()
      

  10.   

    to C_sharp
    你取光标的坐标方法好!我的很垃圾!