秋·风

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
lazarus 没自带类似的menubutton控件,虽然可以用TToolButton的DropdownMenu+popupmenu很方便达到类似的效果,但需要用toolbar配合,不符合我的要求。最后采用button+speedbutton+popupmenu完美实现,其中关键是使用ClienttoScreen将控件座标转为屏幕座标。

procedure
TForm1.SpeedButton1Click(Sender: TObject); var p:tpoint; begin p:=ClienttoScreen(point(Button1.Left,Button1.Top+Button1.Height)); PopupMenu2.Popup(p.X,p.y); end;

 

posted on 2022-07-28 14:56  秋·风  阅读(349)  评论(0)    收藏  举报