![]() |
Warum kann die ComboBox nicht direkt aufklappen?
Ich kam auf die verrückte Idee, die ComboBox so einzustellen, dass es, wenn es nicht dem Fokus hat, auch nicht den DropDown-Button anzeigt. Der Code sollte einfach sein:
Delphi-Quellcode:
Bei OnEnter wird der Style csDropDown, sonst csSimple. Insoweit funktioniert es auch.
procedure TForm1.ComboBox1Enter(Sender: TObject);
begin ComboBox1.Style := csDropDown; end; procedure TForm1.ComboBox1Exit(Sender: TObject); begin ComboBox1.Style := csSimple; end; Das Problem ist, dass ich nach OnEnter nicht sofort auf DropDown-Button klicken kann. Tut sich nichts. Erst wenn ich erneut in das Fenster klicke, erst dann funktionert der DropDown-Button. Warum? |
AW: Warum kann die ComboBox nicht direkt aufklappen?
Klicke nochmal in das Edit, dann geht's.
Tja, das Umgestelle scheint wohl den Fokus etwas durcheinanderzubringen. Du kannst es ja mal mit SetFocus oder Folgendem versuchen.
Delphi-Quellcode:
Aber so viel erhoffe ich mir davo nicht, denn das Umstellen des Style erzeugt auch ein komplett neues WindowsControl und in dieses hattest du noch niemals reingeklickt. (der OnMouseDown kommt bei dem alten Control an und wo das OnMouseUp ankommt, kann man nur schwer sagen)
ComboBox1.Style := csDropDown;
ComboBox1.Perform(CM_RECREATEWND, 0, 0); Du kannst höchstens mal versuchen den Style direkt über die WinAPI umzustellen und mußt dabei versuchen, daß die ComboBox nicht neu erstellt wird. Ansonsten verwende doch mal die TComboBoxEx. |
AW: Warum kann die ComboBox nicht direkt aufklappen?
Danke, deine Lösung scheint zu funktionieren. Dass hier ein komplett neues WindowsControl erstellt wird, wusste ich nicht.
|
AW: Warum kann die ComboBox nicht direkt aufklappen?
Hallo!
Ich fleddere mal diese Leiche weil ich grade genau das selbe versuche. Allerdings scheint die Lösung unter XE4 nicht mehr zu funktionieren. Das Style ändert sich nicht und es gibt am Ende Memleaks. Grüße Cody |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 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