TListView
-
Wie kann man eine Aktion auslösen, wenn die Maus über einer TListColumn (Spaltenüberschrift) ist ?
Das Ereignis OnMouseOver der TListView wird bei den Columns der ListView nicht ausgelöst.
Jede Column heit eine Nummer im Tag zugewiesen bekommen (1-5)
Durch eine SWITCH-Anweisung
switch ((TListColumn *)Tag)Meint der Compiler, dass der Auswahlausdruck einer Switch-Anweisung ganzzahlig sein muss.
Die Tags 1-5 sind doch ganzzahlig.....
==>Eisbeer<==
-
-
Hallo
Eisbeer schrieb:
Wie kann man eine Aktion auslösen, wenn die Maus über einer TListColumn (Spaltenüberschrift) ist ?
Das Ereignis OnMouseOver der TListView wird bei den Columns der ListView nicht ausgelöst.
Da müßtest du wohl von TListView eine neue Komponente ableiten und dort direkt die Windows-Message abfangen und verarbeiten. Hier wird das Prinzip erklärt.
Jede Column heit eine Nummer im Tag zugewiesen bekommen (1-5)
Durch eine SWITCH-Anweisung
switch ((TListColumn *)Tag)Meint der Compiler, dass der Auswahlausdruck einer Switch-Anweisung ganzzahlig sein muss.
Die Tags 1-5 sind doch ganzzahlig.....
Du kannst nicht einfach die Tags, in denen die Indexe der Spalten stehen, in TListColumn casten (wenn du nicht einen C-Cast sondern den eigentlich angebrachten static_cast genommen hättest hätte dir der Compiler das auch gesagt). Den Cast könntest du nur machen wenn in den Tags die Adressen der TListColumn-Objekte stehen würden.
Aber das brauchst du auch nicht. Mit dem Index in den Tags kannst du doch bereits über die Eigenschaft TListView::Columns das Spaltenobjekt abfragen, wenn das korrekte TListView bereits feststeht.bis bald
akari/Edit : Huch da hat Jansen den Thread geschlossen, bevor ich mit schreiben fertig war... na ich poste nochmal im anderen Thread.