![]() |
TBitBtn und TPopupMenu
Guten Abend :-D
Ich habe schon das Board durchsucht, aber nicht genau die Lösung gefunden, die ich bräuchte, falls es eine gibt :wink: Also, ich habe einen TBitBtn, wenn man da drauf klickt, dann öffnet sich unter diesem Button ein TPopupMenu, schön ausgerichtet und so. Problem ist mir gestern aufgefallen: Wenn ich nun klicke, nichts im Menü des Buttons anklicke und einfach in meine Form reinklicke, geht das Menü zwar weg, der Button bleibt aber leider gedrückt, also er ist nicht gedrückt, aber er ist noch in der gedrückt-Farbe, was nicht schön aussieht :( Gibts vielleicht eine Passende Window-Message, die ich übersehen habe? Danke für Antworten und einen schönen Abend noch, Alexander :stupid: |
Re: TBitBtn und TPopupMenu
Hallo,
was meinst du mit "gedrückt Farbe"? Hat der Button den Fokus oder ist er noch gedrückt (down)? Falls er noch den Fokus hat, kannst du einem anderen Control den Focus geben (SetFocus) oder falls er down ist, ihn einfach uppen (Down := False); |
Re: TBitBtn und TPopupMenu
Hallo!
Ich denke, ich bebildere das ganze einfach ein wenig: Normal sieht alles so aus: ![]() Dann drücke ich auf den Button um das Menü zu öffnen: ![]() Jetzt klicke ich einfach irgendwo hin, ausser auf den Optionen-Button oder das Menü. dann sieht es so aus: ![]() Der Button hat noch diese "MouseOver" Farbe. Was ist zu tun? |
Re: TBitBtn und TPopupMenu
Naja, wie gesagt, du könntest den Focus verändern. Bspw. via BitBtn1.SetFocus (damit ist BitBtn1 hell hinterlegt).
Andererseits würde ich das nicht ändern, da dieses Verhalten ja Windows Standard ist. Der Benutzer hat zuletzt auf diesen Button geklickt, dann sollte er auch so gekennzeichnet sein. |
Re: TBitBtn und TPopupMenu
Der Focus ist ja geändert. Nur der Button verhält sich so, als wäre die Maus über ihm.
Diese grüne Einfärbung hat nichts mit gedrückt/nicht gedrückt zu tun. Man kann es auch mit dem Luna-Theme machen, da ist bei einem Button, wenn die Maus drüber ist, so eine orange Umrandung. |
Re: TBitBtn und TPopupMenu
Bleibt das Problem noch bestehen, wenn du einen anderen Button drückst?
Meines erachtens markiert Windows auf diese Art das zuletzt verwendete Element ... mfG Markus |
Re: TBitBtn und TPopupMenu
Er bleibt immer so. Wirklich immer.
Die einzige Möglichkeit (bis jetzt), dass diese Unschönheit weg geht, ist, mit der Maus über den Button zu fahren... Ich schätze mal, dass so eine Nachricht wie WM_MOUSELEAVE oder so ähnlich da helfen könnte... Nur wenn es so etwas gibt, wie heißt es? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:17 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 by Thomas Breitkreuz