![]() |
Startbutton mit Menu oberhalb
Moin zusammen,
suche eine Möglichkeit ein Popupmenu so aufgehen zu lassen, dass es exakt am oberen Rand eines Buttons andockt. Die Anzahl der Menüeinträge und Trennbalken kann dabei im Menü variieren. Es ist mir bisher nich möglich das so hinzubekommen, dass es sozusagen andockt, da das Menu nach unten aufgeht und man immer nur grob abschhätzen kann wie hoch es dann ist. Irgendwelche Ideen / Komponenten oder Links? Grüße // Martin |
Re: Startbutton mit Menu oberhalb
Zu dem Zeitpunkt, wo du das Menü "up-poppen" lässt, muss doch feststehen, wieviele Einträge es hat, oder? Und die Höhe der einzelnen Zeilen ist konstant.
|
Re: Startbutton mit Menu oberhalb
Tja, das ist so, bis auf die Trennlinien. Also muß man auch die Trennlinen zählen. Mal probieren (( Martin
|
Re: Startbutton mit Menu oberhalb
Hallo,
Delphi-Quellcode:
var pos : TPoint;
i,z : Integer; begin i := 0; for z := 0 to PopupMenu1.Items.Count-1 do if TMenuItem(PopupMenu1.Items[z]).Caption = '-' then inc(i,9) else inc(i,17); pos.x := Button1.Left; pos.y := Button1.Top-i-(2*3); pos := Form1.ClientToScreen(Pos); PopupMenu1.Popup(Pos.x,pos.y); end; |
Re: Startbutton mit Menu oberhalb
Hallo Lannes,
ja sowas ähnliches hatte ich inzwischen auch gebaut, aber Du hast es sogar mit einer Variable weniger geschaft. Ein Danke in die Stadt der Glocken. Bei Meinem Code fällt mir auf, dass die Verschiebezahlen größer sind. Da ist dann die Schriftgröße noch ein Variabler Faktor. Das werde ich die Tage mal ausprobieren. Danke Euch beiden und Viele Grüße // Martin |
Re: Startbutton mit Menu oberhalb
Hallo,
eventuell hilft Dir das:
Delphi-Quellcode:
GetSystemMetrics(SM_CYMENUSIZE);
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:44 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