<?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[MainMenu Fragen]]></title><description><![CDATA[<p>Ich lege mit NewItem() dynamisch zur Laufzeit zusätzlich neue Items an.<br />
Wie muss ich diese bei Programmende TForm1-&gt;OnClose() wieder freigeben, wenn man das denn muss?</p>
<p>Einfach alle Items der MainMenu durchgehen und per Delete löschen?</p>
<p>for (int i=Sprachen-&gt;Count-1;i&gt;=0;i--) Sprachen-&gt;Delete(i);</p>
<p>Ich frage weil in der Hilfe steht:</p>
<blockquote>
<p>Warnung: Der von NewItem zurückgegebene Eintrag hat keinen Eigentümer. Der Programmierer muß den dem Eintrag zugewiesenen Arbeitsspeicher wieder freigeben, wenn der Eintrag nicht mehr benötigt wird. Die Methoden <strong>Delete</strong> und Remove von TMenuItem geben diesen Arbeitsspeicher <strong>nicht frei</strong>.</p>
</blockquote>
<p>Bin deshalb ein wenig verunsichert <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/88298/mainmenu-fragen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 05 Jul 2026 11:00:25 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/88298.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 08 Oct 2004 10:23:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to MainMenu Fragen on Fri, 08 Oct 2004 10:23:22 GMT]]></title><description><![CDATA[<p>Ich lege mit NewItem() dynamisch zur Laufzeit zusätzlich neue Items an.<br />
Wie muss ich diese bei Programmende TForm1-&gt;OnClose() wieder freigeben, wenn man das denn muss?</p>
<p>Einfach alle Items der MainMenu durchgehen und per Delete löschen?</p>
<p>for (int i=Sprachen-&gt;Count-1;i&gt;=0;i--) Sprachen-&gt;Delete(i);</p>
<p>Ich frage weil in der Hilfe steht:</p>
<blockquote>
<p>Warnung: Der von NewItem zurückgegebene Eintrag hat keinen Eigentümer. Der Programmierer muß den dem Eintrag zugewiesenen Arbeitsspeicher wieder freigeben, wenn der Eintrag nicht mehr benötigt wird. Die Methoden <strong>Delete</strong> und Remove von TMenuItem geben diesen Arbeitsspeicher <strong>nicht frei</strong>.</p>
</blockquote>
<p>Bin deshalb ein wenig verunsichert <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/623924</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/623924</guid><dc:creator><![CDATA[LarC]]></dc:creator><pubDate>Fri, 08 Oct 2004 10:23:22 GMT</pubDate></item><item><title><![CDATA[Reply to MainMenu Fragen on Fri, 08 Oct 2004 12:31:07 GMT]]></title><description><![CDATA[<p>Die Methoden löschen nur die Einträge aus der Liste, aber nicht das dahintersteckende TMenuItem-Objekt.<br />
Diese müssen einzeln per &quot;delete&quot; (zB. &quot;delete MenuItem1&quot;) gelöscht werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/624020</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/624020</guid><dc:creator><![CDATA[PAB]]></dc:creator><pubDate>Fri, 08 Oct 2004 12:31:07 GMT</pubDate></item><item><title><![CDATA[Reply to MainMenu Fragen on Fri, 08 Oct 2004 12:42:47 GMT]]></title><description><![CDATA[<p>Mit MenuFile-&gt;Add(newItem); verbinde ich doch diese. Also wenn ich das Programm beedende sollte mit MenuFile auch die dynamischen einträge verschwinden oder? Wohl nicht.</p>
<p>Hat wer eventuell ein Beispiel wie ich beliebig viele Menüeinträge dynamisch zur Luafzeit hinzufügen und bei Programmende sauber wieder freigibt?</p>
<p>Muss man das mit vector&lt;&gt; machen? wieviel Einträge es werden weiss ich ja erst bei Programm start. Also brauch man ein Array was nach oben offen ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/624045</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/624045</guid><dc:creator><![CDATA[LarC]]></dc:creator><pubDate>Fri, 08 Oct 2004 12:42:47 GMT</pubDate></item><item><title><![CDATA[Reply to MainMenu Fragen on Fri, 08 Oct 2004 12:48:34 GMT]]></title><description><![CDATA[<p>In der <a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39305" rel="nofollow">FAQ</a> gibt's einen Eintrag zu dynamischen Arrays.</p>
<p>Allerdings brauchst du das hier nicht notwendigerweise, du kannst zum Löschen ja durch die Items-Property des betreffenden Menus iterieren (dabei Items in eventuellen SubMenus nicht vergessen).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/624051</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/624051</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Fri, 08 Oct 2004 12:48:34 GMT</pubDate></item><item><title><![CDATA[Reply to MainMenu Fragen on Fri, 08 Oct 2004 13:32:38 GMT]]></title><description><![CDATA[<p>Ich habe den Menü Eintrag &quot;Vorlagen&quot; als Submenu (-&gt;) dann &quot;Standard Vorlage&quot; darunter ein &quot;-&quot; Balken und darunter dann die dynamischen Einträge für zuletzt verwendete Vorlagen. Ähnlich dem &quot;Datei&quot;-&gt;&quot;Neu öffnen&quot; bei CBuilder5.</p>
<p>Angelegt habe ich die Einträge so:<br />
for (i=0;i&lt;anzahl;i++)<br />
{<br />
TMenuItem* newItem = NewItem(Liste-&gt;Strings[i],0,false,true,VorlagenClick,0,&quot;VorlagenItem_&quot;+IntToStr(i));<br />
Vorlagen-&gt;Add(newItem);<br />
}</p>
<p>Momentan also 2 feste + 22 dynamische Einträge in &quot;Vorlagen&quot;.</p>
<p>ich muss also in onClose()<br />
for (i=2;i&lt;Vorlagen-&gt;Count;i++)<br />
{<br />
delete Vorlagen-&gt;Items[i];<br />
}</p>
<p>ist das so richtig?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/624125</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/624125</guid><dc:creator><![CDATA[LarC]]></dc:creator><pubDate>Fri, 08 Oct 2004 13:32:38 GMT</pubDate></item></channel></rss>