【发布时间】:2012-05-15 09:28:24
【问题描述】:
我正在尝试模拟一个TButton的下拉菜单,如下图:
procedure DropMenuDown(Control: TControl; PopupMenu: TPopupMenu);
var
APoint: TPoint;
begin
APoint := Control.ClientToScreen(Point(0, Control.ClientHeight));
PopupMenu.Popup(APoint.X, APoint.Y);
end;
procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
begin
DropMenuDown(Button1, PopupMenu1);
// ReleaseCapture;
end;
end;
问题是,当菜单被下拉时,如果我再次单击该按钮,我希望菜单关闭,但它却再次下拉。
我正在为通用 Delphi TButton 寻找解决方案专门,而不是任何第 3 方等价物。
【问题讨论】:
标签: delphi button drop-down-menu delphi-7