<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[[Gelöst] Problem mit TTreeView]]></title><description><![CDATA[<p>HI</p>
<p>Ich möchte gerne Sachen in einem TTreeView abbilden!<br />
Vorher möchte ich aber prüfen ob es so einen Eintrag nicht schon gibt!</p>
<p>Das mache ich so:</p>
<pre><code class="language-cpp">AnsiString CompName;
  AnsiString Pfad;
  AnsiString Name;
  TTreeNode *Node;
  bool exist = false;
  Dirs-&gt;Items-&gt;Clear();
  Dirs-&gt;Items-&gt;Add(NULL,&quot;/&quot;);
  Node = Dirs-&gt;Items-&gt;Item[0];

  for(int i = 0; i &lt; TempList-&gt;Count; i++)
  {
          CompName = TempList-&gt;Strings[i].SubString(1,TempList-&gt;Strings[i].Length() - 2);
      CompName.Delete(1,CompName.Pos(&quot;\&quot;/\&quot;&quot;) + 3);
      if(CompName.Pos(&quot;/&quot;) != 0)
        Name = CompName.SubString(1,CompName.Pos(&quot;/&quot;) - 1);
      else
        Name = CompName;  // Hier steht also der Name des neuen Nodes drinne
      CompName = CompName.Delete(1,CompName.Pos(&quot;/&quot;));
      exist = false;
      for(int x = 0; x &lt; Node-&gt;Count;x++)
      {
        if(Node[x].Text == Name)  // Hier Ändern
        {
          x = Node-&gt;Count;
          exist = true;
        }

      }
      if(!exist)
      {
        Dirs-&gt;Items-&gt;AddChild(Node,Name);
      }
    }

  }
</code></pre>
<p>Das klappt aber nur bis i = 2 ist (Count ist in dem Fall = 3) Dann bekomme ich eine Exeption! Mache ich was falsch oder woran kann das liegen!</p>
<p>Wenn ich erlich sein soll Habe ich das prinzip was dahinter steht auch noch nicht 100% verstanden trotz langem Hilfe lesen!</p>
<p>THX</p>
<p>Dagsta</p>
<p><strong>Lösung:</strong></p>
<pre><code class="language-cpp">Node-&gt;Item[x]-&gt;Text // So muss das sein
</code></pre>
<p>Editiert weil falsche Code version <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/106337/gelöst-problem-mit-ttreeview</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Jul 2026 00:10:59 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/106337.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 08 Apr 2005 19:11:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [Gelöst] Problem mit TTreeView on Fri, 08 Apr 2005 19:17:13 GMT]]></title><description><![CDATA[<p>HI</p>
<p>Ich möchte gerne Sachen in einem TTreeView abbilden!<br />
Vorher möchte ich aber prüfen ob es so einen Eintrag nicht schon gibt!</p>
<p>Das mache ich so:</p>
<pre><code class="language-cpp">AnsiString CompName;
  AnsiString Pfad;
  AnsiString Name;
  TTreeNode *Node;
  bool exist = false;
  Dirs-&gt;Items-&gt;Clear();
  Dirs-&gt;Items-&gt;Add(NULL,&quot;/&quot;);
  Node = Dirs-&gt;Items-&gt;Item[0];

  for(int i = 0; i &lt; TempList-&gt;Count; i++)
  {
          CompName = TempList-&gt;Strings[i].SubString(1,TempList-&gt;Strings[i].Length() - 2);
      CompName.Delete(1,CompName.Pos(&quot;\&quot;/\&quot;&quot;) + 3);
      if(CompName.Pos(&quot;/&quot;) != 0)
        Name = CompName.SubString(1,CompName.Pos(&quot;/&quot;) - 1);
      else
        Name = CompName;  // Hier steht also der Name des neuen Nodes drinne
      CompName = CompName.Delete(1,CompName.Pos(&quot;/&quot;));
      exist = false;
      for(int x = 0; x &lt; Node-&gt;Count;x++)
      {
        if(Node[x].Text == Name)  // Hier Ändern
        {
          x = Node-&gt;Count;
          exist = true;
        }

      }
      if(!exist)
      {
        Dirs-&gt;Items-&gt;AddChild(Node,Name);
      }
    }

  }
</code></pre>
<p>Das klappt aber nur bis i = 2 ist (Count ist in dem Fall = 3) Dann bekomme ich eine Exeption! Mache ich was falsch oder woran kann das liegen!</p>
<p>Wenn ich erlich sein soll Habe ich das prinzip was dahinter steht auch noch nicht 100% verstanden trotz langem Hilfe lesen!</p>
<p>THX</p>
<p>Dagsta</p>
<p><strong>Lösung:</strong></p>
<pre><code class="language-cpp">Node-&gt;Item[x]-&gt;Text // So muss das sein
</code></pre>
<p>Editiert weil falsche Code version <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/762579</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/762579</guid><dc:creator><![CDATA[dagsta]]></dc:creator><pubDate>Fri, 08 Apr 2005 19:17:13 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst] Problem mit TTreeView on Fri, 08 Apr 2005 19:17:29 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>an welcher Stelle tritt denn die Exception auf?<br />
Um das zu klären, must du das Programm debuggen.<br />
Wie das geht, findets du z.B. hier <a href="http://www.junix.ch/bcb/help/debug.html" rel="nofollow">http://www.junix.ch/bcb/help/debug.html</a></p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/762582</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/762582</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Fri, 08 Apr 2005 19:17:29 GMT</pubDate></item></channel></rss>