StartLabelEdit (TreeView-Objekt)



  • Folgende Funktion (via Klassenassistent) habe ich angelegt und implementiert:

    void CTreeDlg::OnRclickTree1(NMHDR* pNMHDR, LRESULT* pResult) 
    {
    	// TODO: Code für die Behandlungsroutine der Steuerelement-Benachrichtigung hier einfügen
    	HTREEITEM selected;
    	CEdit* pceChange;
    	CString strInput;
    	selected = m_ctlTree.GetSelectedItem();
    	pceChange = m_ctlTree.EditLabel(selected);
    
    	pceChange->GetLine(0,strInput);
    
    	m_ctlTree.SetItemText(selected, strInput);
    
    	*pResult = 0;
    }
    

    Dabei ist m_ctlTree eine Membervariable eines TreeViewCtrl Objekts.

    Die Funktion soll folgendes machen:
    Bei einem Rechtsklick soll der Knoten Punkt ein Edit-Fenster erhalten, mit dem der Wert dauerhaft überschrieben werden kann.
    Es funktionierte auch schon soweit, allerdings wurde anstatt des Textes der im CEdit-Fenster stand, nur kryptische Zeichen angezeigt.

    Ob das obige Construct funzt, weiss ich nicht, da ich einige Sachen, die auskommentiert waren rausgelöscht habe. Ich hatte also mehrere Versuche in einer Funktion, deswegen war das etwas unübersichtlich.
    Es wäre aber nett, wenn mir jemand helfen könnte, denn an dieser Stelle weiss ich echt nicht mehr weiter, obwohl ich schon seit Tagen daran rumdoktor ...

    Vielen Dank schon mal.


Log in to reply