![]() |
Buttonmenü á la Rechtsklick
Hallo zusammen!
Gibt es eine Möglichkeit ein Untermenü für Buttons zu machen, wie wenn man Rechts z.B. auf eine Datei klickt? Vielen Dank im voraus! Gruß 1PM |
Re: Buttonmenü á la Rechtsklick
Moin 1PM,
ja gibt's (falls ich Dich richtig verstanden habe). Das ganze nennt sich PopUpMenu, und kann einem Button als Eigenschaft zugeordnet werden (siehe OI). |
Re: Buttonmenü á la Rechtsklick
Vielen Dank Chris! :hello:
|
Re: Buttonmenü á la Rechtsklick
Jetzt gibt es nur noch ein Problem:
Wie öffnet sich es am Button? Ich habe mich dem Beispiel aus der Hilfe bedient:
Delphi-Quellcode:
Allerdings öffnet er es oben, kurz unter der Titelleiste.
procedure TForm1.FormCreate(Sender: TObject);
begin PopupMenu1.AutoPopup := False; end; procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin PopupMenu1.Popup(X, Y); end; Das Formular, auf dem das PopupMenu geöffnet wird ist MDIChild. Vielen Dank im voraus! Gruß 1PM |
Re: Buttonmenü á la Rechtsklick
Hast Du das Menü dem Formular oder dem Button zugeordnet?
(Die Eigenschaft lässt sich über den OI editieren!) Gruß Wormid |
Re: Buttonmenü á la Rechtsklick
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin PopupMenu1.AutoPopup := False; Button1.PopupMenu := PopupMenu1; Button1.OnClick := Button1Click; end; procedure TForm1.Button1Click(Sender: TObject); var P: TPoint; begin if (Sender is TButton) then with TButton(Sender) do begin P.X := Left; P.Y := Top + Height; P := Self.ClientToScreen(P); PopupMenu.Popup(P.X, P.Y); end; end; |
Re: Buttonmenü á la Rechtsklick
Moin 1PM,
probier's mal so:
Delphi-Quellcode:
procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer); begin if Button <> mbRight then exit; PopupMenu1.Popup(Mouse.CursorPos.x,Mouse.CursorPos.y); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:14 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz