![]() |
eigene ComboBox
Folgendes Problem: Ich will eine ComboBox erstellen, die bei den Einträgen links noch checkboxen hat, die man anhäkeln kann. Grundsätzlich habe ich dieses Problem schon in VCL gelöst bekommen, scheitere aber unter .Net daran, dass ich der Liste keine eigene Windows-Nachrichten-Warteschlange zuordnen kann. Für SetWindowLong bräuchte ich das handle der Liste, aber die Funktion, mit der ich unter VCL dieses gelöst habe, ginbt es unter .Net nicht.
Das Zeichnen der Checkboxen ist kein Problem, das mache ich it OwnerDraw und ob Haken gesetzt sind oder nicht, dafür hab ich ein BoolArray. Mein Problem hierbei ist, dass ich den Clickpunkt in der Liste ermitteln und gegebenenfalls auch das Zuklappen verhindern muss (dann nämlich, wenn der User auf so eine Checkbox geclickt hat). Jetzt die Frage: Gibt es unter .Net eine Möglichkeit, MouseMove und MouseDown in der runtergeklappten Liste abzufangen? Und wenn ja, wie mache ich das? |
Re: eigene ComboBox
hmm... .Net mag es eigentlich nicht, wenn du in Sachen wie WIndowsmessages rumfummelst. Bist du dir sicher, dass die Combobox das richtige Werkzeug für das ist, was du haben willst?
|
Re: eigene ComboBox
Ja, da ich hier ein Set darstellen will, aber einfach nicht genug Platz für ne checklistbox ist. Ausserdem brauche ich dies auch noch für de ComboBox, die links eine Button-leiste hat und die einzelnen Zeilen noch in spalten aufgeteilt werden. So kann man z.b.: mit drei clicks Zahlen von -1000 bis 1000 eingeben. Mit Maus deshalb, wein das Programm auf einem Notebook laufen soll, und da ist mit Tastatur echt Sch****
|
Re: eigene ComboBox
Wenn es garnicht geht, dann kannst du ja eventuell für deine ComboBox mit CheckBoxen immernoch eine CheckListBox verwenden, wo du einfach zum "Auf-/Zuklappen" die Höhe änderst :stupid:
|
Re: eigene ComboBox
Nicht wirklich, da die checkboxlist nicht aus dem ParentControl rausragen kann.
|
Re: eigene ComboBox
Na ja, solange du innerhalb der Form bleibst, gibt es genug Wege dafür ... 's is ja och nur für den Notfall, fall es anders nicht geht :angel2:
Selbst über die Form hinaus sollte es gehn, wenn auch nicht ganz so elegant ._. |
Re: eigene ComboBox
Also für mich wäre die Manipulation von Windows-Nachrichten unter .Net auch schon ein Notfall... (nicht dass das jetzt irgendwas zur Problemlösung beitragen würde).
Ansonsten kann man doch auch unter .Net Komponenten entwickeln, oder? |
Re: eigene ComboBox
Die Frage war ja auch, ob das vielleicht ohne die Rumfummelei mit Windowsnachrichten geht.. denn sonst kann ich mit .net auch sparen (wegen Portabilität)
|
Re: eigene ComboBox
So. Für alle, dies wissen wollen, die windows-nachrichten für die Klappbox kommen gamz normal an der wndproc der combobox an. die Liste ist im LParam enthalten.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:50 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