none
VC++ 2008 Treeview

    Frage

  • Hi NG,

    ich versuche mich gerade in Treeview's einzuarbeiten und fand im Internet leider keine passenden Beispiele.

    Könnte mir evtl. jemand ein Beispiel oder auch einen Link zu einem deutschsprachigen Beispiel (möglichst nicht von Microsoft -hat nichts gebracht) posten?

    Für eine Antwort wäre ich dankbar.

    Gruß

    Andy

    Donnerstag, 27. Juni 2013 06:48

Alle Antworten

  • Hallo Andy,

    das Du nichts für VC++ findest, liegt vor allem daran, dass es nur wenig Masochisten gibt, die sich VC++/CLI antun. Verwende C# (oder VB) und Du findest haufenweise.

    In TreeView-Steuerelement (Windows Forms) gibt es zumindest Beispielcode-Schnippsel.

    Gruß Elmar

    • Als Antwort vorgeschlagen KoopakillerMVP Samstag, 20. Juli 2013 23:10
    Donnerstag, 27. Juni 2013 07:38
  • Hi Elmar,

    ich habe es so versucht, wie es beschrieben wurde und bekam beim Compilieren folgende Meldung:

    Unbehandelter Ausnahmefehler in der Anwendung

    Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

    ************** Ausnahmetext **************
    System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
       bei System.Windows.Forms.TreeNode.get_Nodes()
       bei TreeViewTest1.Form1.Form1_Load(Object sender, EventArgs e) in c:\dokumente und einstellungen\verwaltung it\eigene dateien\visual studio 2008\projects\treeviewtest1\treeviewtest1\form1.h:Zeile 85.
       bei System.Windows.Forms.Form.OnLoad(EventArgs e)
       bei System.Windows.Forms.Form.OnCreateControl()
       bei System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
       bei System.Windows.Forms.Control.CreateControl()
       bei System.Windows.Forms.Control.WmShowWindow(Message& m)
       bei System.Windows.Forms.Control.WndProc(Message& m)
       bei System.Windows.Forms.ScrollableControl.WndProc(Message& m)
       bei System.Windows.Forms.ContainerControl.WndProc(Message& m)
       bei System.Windows.Forms.Form.WmShowWindow(Message& m)
       bei System.Windows.Forms.Form.WndProc(Message& m)
       bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


    ************** Geladene Assemblys **************
    mscorlib
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.3643 (GDR.050727-3600).
        CodeBase: file:///c:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll.
    ----------------------------------------
    TreeViewTest1
        Assembly-Version: 1.0.4926.15799.
        Win32-Version: .
        CodeBase: file:///c:/Dokumente%20und%20Einstellungen/Verwaltung%20IT/Eigene%20Dateien/Visual%20Studio%202008/Projects/TreeViewTest1/Debug/TreeViewTest1.exe.
    ----------------------------------------
    msvcm90d
        Assembly-Version: 9.0.30729.1.
        Win32-Version: 9.00.30729.1.
        CodeBase: file:///C:/WINDOWS/WinSxS/x86_Microsoft.VC90.DebugCRT_1fc8b3b9a1e18e3b_9.0.30729.1_x-ww_f863c71f/msvcm90d.dll.
    ----------------------------------------
    System
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.3644 (GDR.050727-3600).
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll.
    ----------------------------------------
    System.Windows.Forms
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.3645 (GDR.050727-3600).
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll.
    ----------------------------------------
    System.Drawing
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.3644 (GDR.050727-3600).
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll.
    ----------------------------------------
    mscorlib.resources
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.3643 (GDR.050727-3600).
        CodeBase: file:///c:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll.
    ----------------------------------------
    System.Windows.Forms.resources
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.3053 (netfxsp.050727-3000).
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_de_b77a5c561934e089/System.Windows.Forms.resources.dll.
    ---------------------------------------

    Code:

    private: System::Void Form1_Load(System::Object^  sender, System::EventArgs^  e) {
                     TreeNode ^ newNode = gcnew TreeNode("Text for new node");
                     treeView1->SelectedNode->Nodes->Add(newNode);
                 }

    Wie bekomme ich das Problem in den Griff?

    Gruß

    Andy

    Donnerstag, 27. Juni 2013 07:59
  • Hallo Andy,

    vielleicht mit ein wenig Nachdenken:
    Wie kommst Du darauf das SelectedNode (dütsch: ausgewählter Knoten) an der Stelle passend sein könnte? Beim Laden kann noch nichts selektiert sein und in einem noch leeren TreeView wird es auch später nichts geben.

    Damit was zum selektieren existiert, sollte zuerst einmal die Nodes Auflistung befüllt werden.
    Und evtl. versuchst Du Dich für den Anfang an dem Beispiel dort.

    Gruß Elmar

    • Als Antwort vorgeschlagen KoopakillerMVP Samstag, 20. Juli 2013 23:10
    Donnerstag, 27. Juni 2013 08:30