Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TBitBtn und TPopupMenu (https://www.delphipraxis.net/63871-tbitbtn-und-tpopupmenu.html)

wicht 23. Feb 2006 21:58


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:

dahead 23. Feb 2006 23:45

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);

wicht 24. Feb 2006 07:47

Re: TBitBtn und TPopupMenu
 
Hallo!

Ich denke, ich bebildere das ganze einfach ein wenig:

Normal sieht alles so aus:

http://www.mistake.ws/normal.jpg

Dann drücke ich auf den Button um das Menü zu öffnen:

http://www.mistake.ws/mittel.jpg

Jetzt klicke ich einfach irgendwo hin, ausser auf den Optionen-Button oder das Menü. dann sieht es so aus:

http://www.mistake.ws/doof.jpg

Der Button hat noch diese "MouseOver" Farbe. Was ist zu tun?

dahead 24. Feb 2006 08:36

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.

wicht 24. Feb 2006 09:12

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.

markusj 24. Feb 2006 09:51

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

wicht 24. Feb 2006 13:39

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 07:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz