rechte Maus in CTreeCtrl



  • Hi ho.

    Wie kann ich mit der rechten Maustaste in einem CTreeCtrl ein Item auswählen? wenn ich jetzt in die Ansicht mit rechts klicke, dann ist das Item kurz ausgewählt, aber die Selection springt direkt wieder auf das vorher (mit links angeklickte) Item.
    Es soll aber das ausgewählt bleiben, das ich mit rechts geklickt habe.
    Wie kann ich das realisieren?

    Ich weiß, es ist alles n bissl viel geklicke *gg*, aber ich hoffe, ihr habt mein Problem verstanden. 😉



  • jo, das selbe problem hab ich auch. ich hatte sogar ne vorlage, dessen baumklasse (abgeleitet von CTreeCtrl) ich benutzt habe. bei ihm tritt das problem nicht auf - bei mir schon 😕

    Esco, ratlos



  • Ist das Standardverhalten vom Treee View Ctrl.
    Du kannst aber im NM_RCLICK-Handler die Auswahl umsetzen



  • aber wie erhalte ich denn das Item, das von der rechten Maus ausgewählt wird?



  • Ah OK 🙂

    Ich bin mir nicht sicher, ob die aktuelle Auswahl umgesetzt wird; was auf jeden Fall geht ist:

    GetMessagePos() ==> Mausposition der aktuellen Message
    ScreenToClient()
    TVM_HITTEST ==> gucken was getroffen

    Ich kann Montag nochmal @work checken, was ich eigentlich verwende 🙂



  • ich habs mittlerweile:

    SelectItem(HitTest(point, &nFlags));
    

    Danke für deine Bemühungen!


Anmelden zum Antworten