[ListView + Checkboxen] Notification beim klicken auf die Checkbox?



  • Hallo,

    ich habe ein ListView Control mit dem Style LVS_EX_CHECKBOXES erstellt. Sendet Windows irgendeine Message oder Notification, wenn der User eine Checkbox in der Liste aktiviert/deaktiviert?

    Ich hab schon ein bisschen in der MSDN gesucht, hab bis jetzt aber nichts brauchbares gefunden. Da hab ich aber nur die Funktion ListView_GetCheckState() gefunden und ich brauche ja eine Notification/Message. Einfach Mausklicks auf das Control abzufangen funktioniert bei mir nicht, da die Klicks auf die Checkbox scheinbar vorher abgefangen werden und ich die nie zu gesicht kriege...

    Ich hoffe, dass jemand Rat weiß 😉



  • Hallo,

    Sorry für die Leichenschändung - ich seh' schon, dass der Thread etwas älter ist. Leider findet man ihn relativ gut über Google.

    Ich hatte das selbe Problem - meine Lösung war es, WM_NOTIFY abzufangen.
    Als lParam wird eine Struktur des Typs NMHDR übergeben.

    Nun holt man sich aus dieser Struktur die Werte hWndFrom und Code. hWndFrom muss natürlich auf den Handle unserer Listview passen. Und Code muss -12 sein.

    Im nächsten Schritt kann man jetzt durch die ListView Elemente loopen und den Checked-State abfragen - oder eben anderweitig abfragen, WO das Check-Event stattfand.



  • m.andreschak schrieb:

    Sorry für die Leichenschändung

    hmmm, warum sorry?
    Ich persönlich finde es immer gut, wenn jemand eine brauchbare Lösung oder einen vernünftigen Vorschlag zum Problem postet.

    Insofern finde ich Deinen Beitrag gut!
    Schließlich gibt es auf der Welt immer jemanden der das gleiche Problem hat 👍


  • Mod

    Nein. Man muss nicht durch irgend etwas druchloopen. Es geht viel einfacher:
    LVN_ITEMCHANGED behandeln. Es ist der Status, der sich ändert!
    http://msdn.microsoft.com/en-us/library/bb774845(VS.85).aspx


Anmelden zum Antworten