![]() |
TComboBox in TPopupMenu
Hallo,
gibt es eine Möglichkeit, in einem TPopupMenu eine TComboBox zu integrieren? Mir ist bekannt, dass ich mir zur Not ein Fenster ohne Rahmen selbst basteln und statt des TPopupMenu anzeigen lassen könnte. Diesen komplizierten Weg würde ich aber ungern gehen, wenn es anders ging. Ich habe bereits eine ganze Weile gesucht. Ich finde bedauerlicher Weise immer bloß Probleme damit, dass zu einer TComboBox noch ein TPopupMenu hinzugefügt werden soll. Ich versuche es mal "aufzumalen":
Code:
Bitte nicht meckern, falls das Thema hier schon besprochen wurde. Dann war ich nur zu dusselig zum Suchen und würde mich über einen Link freuen.
MenuItem 1
MenuItem2 ComboBox 1 - Item 1 - Item 2 - Item 3 ComboBox 2 - Item 1 - Item 2 - Item 3 MenuItem 3 |
AW: TComboBox in TPopupMenu
Das dürfte schwierig werden.
Wie wäre es stattdessen mit einem Untermenü aus RadioItems? Edit: Alternativ gingen vermutlich Third-Party-Komponenten (TB2000, DevEx?) |
AW: TComboBox in TPopupMenu
Danke für die schnelle Antwort.
Zitat:
Zitat:
Dann werde ich es über ein Fenster machen... |
AW: TComboBox in TPopupMenu
Nicht mit dem "normalen" Windows-Menü, aber Fremdkomponenten können das eventuell. (z.B. bei DevExpress TdxRibbon+TdxBarApplicationMenu)
Du kannst im Parent ja den aktuellen Wert anzeigen und als Untermenü die Auswahl. Oder man zeigt in dem Item den aktuellen Wert und beim Klick wird ein Popup oder anderes Auswahlfenster angezeigt. |
AW: TComboBox in TPopupMenu
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Ich habe jetzt bloß 1 Problem: das "Dropdown" wird über die gesamte Höhe des Bildschirms angezeigt. Ich habe mal einen Screenshot angehängt. Kann man das irgendwie begrenzen? Im Objektinspektor finde ich dort auf Anhieb nichts. [edit] Und dann war mir entgangen, dass die Schriftgröße auch nicht zum Rest passt. Meine App/Mein Programm hat eine ziemlich große Schriftgröße zur besseren Lesbarkeit. Das PopupMenu leider nicht. Kann man diese Größe auch irgendwie ändern? [/edit] |
AW: TComboBox in TPopupMenu
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe weiter probiert:
Man kann die Größe ändern, indem man das Menü selbst malt und die Parameter in
Delphi-Quellcode:
und
OnDrawItem
Delphi-Quellcode:
für jedes einzelne Element anpasst. Aber das Ergebnis befriedigt mich optisch nicht. Zum anderen Problem des riesigen Auswahlfensters habe ich nichts gefunden.
OnMeasureItem
Ich bin jetzt so weit, dass ich ein Fake-Menü über eine Form gebastelt und das Aussehen/Verhalten dem von TPopupMenu angepasst habe. Allerdings habe ich ein Problem mit der Rückmeldung: Wenn ich das Fenster mit
Delphi-Quellcode:
anzeige, wäre alles schick. Allerdings passt dann das Verhalten als PopupMenu nicht mehr. Z.B. wird das Fenster nicht bei einem Klick woanders hin geschlossen und es ändert die Position nicht.
ShowModal
Zeige ich es mit
Delphi-Quellcode:
, klappt das zwar. Aber ich tue mich schwer damit den Status des Fensters mitzubekommen.
Show
Gibt es ein Ereignis im Hauptform, dass das Schließen eines SubForms meldet? Anderenfalls muss ich in den sauren Apfel beißen und mit Messages arbeiten. Den Quelltext habe ich angehängt. Manchmal sagt der mehr als Worte. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:37 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