CTreeView - OnTvnSingleExpandTree



  • Hi!

    Ich möchte in einem CTreeControl auf das "Aufklappen" eines Items reagieren. Dazu hab ich :
    [code}
    void OnTvnSingleExpandTree1(NMHDR *pNMHDR, LRESULT *pResult)

    [/code]

    gefunden.

    Ich möchte nun wissen an welchem Item das + geklickt wurde kann aber mit dem NMHDR * pNMHDR nichts anfangen.

    Ich wenns gleich flames hagelt 🤡

    Kann mir bitte jemand zeigen wie ich in der Ausgangslage an das item rankomme ?

    LPNMTREEVIEW pNMTreeView = reinterpret_cast<LPNMTREEVIEW>(pNMHDR);
    

    LPNMTREEVIEW -> in der Struktur blicke ich nicht durch und sonderlich fit in der MFC bin ich noch nicht.

    thx
    Michael

    [edit]ich vergess permanent die smilies auszumachen :o( [/edit]

    [ Dieser Beitrag wurde am 17.04.2003 um 20:26 Uhr von Knuddlbaer editiert. ]



  • Ich hab folgenden Weg gefunden:

    void CIncludeScannerView::OnTvnItemexpandingTree1(NMHDR *pNMHDR, LRESULT *pResult)
    {
        LPNMTREEVIEW pNMTreeView = reinterpret_cast<LPNMTREEVIEW>(pNMHDR);
    
        HTREEITEM it = pNMTreeView->itemNew.hItem;
        if(!it)
            return; 
    MessageBox(m_TreeControl.GetItemText(it)); // Testaufgabe um welches Element es sich handelt
    
        *pResult = 0;
    }
    

    Kann man das so machen oder muß man damit Rechnen das es irgendwann mal nicht klapt ?!


Anmelden zum Antworten