<?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[RichEdit und TreeCtrl]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe da ein paar Fragen zum RichEditor und zum TreeCtrl.<br />
RichEditor:<br />
1.Ich lade aus einer etwa 6MB großen Datei den Text in einen CString. Den CString geb ich dann mit SetDlgItemText() in einem RichEditor aus. Nun möchte ich diesen Text aber auch ändern können.<br />
Meine Frage dazu ist nun, manchmal kann ich Eingaben in dem RichEditor vornehmen und manchmal nicht, woran liegt das? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
Und muß ich dafür z.B. eine Nachrichtenbehandlunsroutine wie EN_Change benutzen? Denn eigentlich will ich nur Text im RichEditor darstellen, diesen verändern können und diesen dann bei Bedarf über einen Button wieder abspeichern.<br />
2.Muß man für die Darstellung von Umlauten (ä,ü,ß,...) im RichEditor extra Einstellungen vornehmen? Denn manchmal werden diese richtig dargestellt und dann wieder auch nicht.</p>
<p>TreeCtrl:<br />
3. Ich möchte eine Funktion in CDialog::OnInitDialog() aufrufen:</p>
<pre><code class="language-cpp">CDialog::OnInitDialog(){
.
.
.
int nID=1046;
treeDarstellung(nID);
.
.
.
}
</code></pre>
<p>Bekomm aber beim Ausführen des Programmes eine Assertion failed Meldung und zwar an der Stelle:</p>
<pre><code class="language-cpp">void TreeBib::treeDarstellung(int nID){
.
.
.
CTreeCtrl *pTreeCtrl1=(CTreeCtrl*)GetDlgItem(nID);
.
.
.
}
</code></pre>
<p>Wenn ich den Code der Funktion direkt in die OnInitDialog() schreibe funktiooniert das ganze so wie ich das möchte. Hat jemand eine Idee wo mein Fehler liegen könnte?<br />
Wenn ich mit dem Debugger alles durchgehe, lande ich in<br />
C:\....\VC98\CRT\SRC\OUTPUT.C<br />
Der Code ist folgender:</p>
<pre><code class="language-cpp">.
.
.
#ifdef _UNICODE
.
.
.
if(flags &amp;(FL_LONG|FL_WIDECHAR){
.
.
.
while(i-- &amp;&amp; *p){
   p=text.sz;   //-&gt;Assertion failed
.
.
.
}
}
.
.
.
</code></pre>
<p>Was das zu bedeuten hat ist mir bisher nicht gelungen herauszufinden. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/172356/richedit-und-treectrl</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Apr 2026 19:48:16 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/172356.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 04 Feb 2007 12:07:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to RichEdit und TreeCtrl on Sun, 04 Feb 2007 12:07:58 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe da ein paar Fragen zum RichEditor und zum TreeCtrl.<br />
RichEditor:<br />
1.Ich lade aus einer etwa 6MB großen Datei den Text in einen CString. Den CString geb ich dann mit SetDlgItemText() in einem RichEditor aus. Nun möchte ich diesen Text aber auch ändern können.<br />
Meine Frage dazu ist nun, manchmal kann ich Eingaben in dem RichEditor vornehmen und manchmal nicht, woran liegt das? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
Und muß ich dafür z.B. eine Nachrichtenbehandlunsroutine wie EN_Change benutzen? Denn eigentlich will ich nur Text im RichEditor darstellen, diesen verändern können und diesen dann bei Bedarf über einen Button wieder abspeichern.<br />
2.Muß man für die Darstellung von Umlauten (ä,ü,ß,...) im RichEditor extra Einstellungen vornehmen? Denn manchmal werden diese richtig dargestellt und dann wieder auch nicht.</p>
<p>TreeCtrl:<br />
3. Ich möchte eine Funktion in CDialog::OnInitDialog() aufrufen:</p>
<pre><code class="language-cpp">CDialog::OnInitDialog(){
.
.
.
int nID=1046;
treeDarstellung(nID);
.
.
.
}
</code></pre>
<p>Bekomm aber beim Ausführen des Programmes eine Assertion failed Meldung und zwar an der Stelle:</p>
<pre><code class="language-cpp">void TreeBib::treeDarstellung(int nID){
.
.
.
CTreeCtrl *pTreeCtrl1=(CTreeCtrl*)GetDlgItem(nID);
.
.
.
}
</code></pre>
<p>Wenn ich den Code der Funktion direkt in die OnInitDialog() schreibe funktiooniert das ganze so wie ich das möchte. Hat jemand eine Idee wo mein Fehler liegen könnte?<br />
Wenn ich mit dem Debugger alles durchgehe, lande ich in<br />
C:\....\VC98\CRT\SRC\OUTPUT.C<br />
Der Code ist folgender:</p>
<pre><code class="language-cpp">.
.
.
#ifdef _UNICODE
.
.
.
if(flags &amp;(FL_LONG|FL_WIDECHAR){
.
.
.
while(i-- &amp;&amp; *p){
   p=text.sz;   //-&gt;Assertion failed
.
.
.
}
}
.
.
.
</code></pre>
<p>Was das zu bedeuten hat ist mir bisher nicht gelungen herauszufinden. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1222634</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1222634</guid><dc:creator><![CDATA[eisherz]]></dc:creator><pubDate>Sun, 04 Feb 2007 12:07:58 GMT</pubDate></item><item><title><![CDATA[Reply to RichEdit und TreeCtrl on Sun, 04 Feb 2007 12:15:24 GMT]]></title><description><![CDATA[<p>Hab da noch was sehr wichtiges vergessen.<br />
Danke für Eure Mühe und Hilfe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1222643</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1222643</guid><dc:creator><![CDATA[eisherz]]></dc:creator><pubDate>Sun, 04 Feb 2007 12:15:24 GMT</pubDate></item><item><title><![CDATA[Reply to RichEdit und TreeCtrl on Sun, 04 Feb 2007 15:34:03 GMT]]></title><description><![CDATA[<p>zu 1.</p>
<p>Die Limitierung der Eingabe erfolgt durch</p>
<pre><code class="language-cpp">CRichEditCtrl::LimitText(..)
</code></pre>
<p>Ist die Limitierung z.B. auf 64 kB, und man fügt einen Text von sagen wir 65 kB ein, lässt sich dieser nicht bearbeiten. Das Control limitiert sich dann zunächst selbst auf die 65 kB. Wenn Du dann 10 Zeichen rauslöscht, kannst du 10 andere dafür eingeben. (Wir sind da vor einem halben Jahr mal drüber gestolpert <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> .) Ein Aufruf von</p>
<pre><code class="language-cpp">m_ctrlRichEdit.LimitText(INT_MAX-1);
</code></pre>
<p>hat unser Problem gelöst (unsere Dateien sind allerdings nur einige 100kB groß).</p>
<p>Damit das RE auf die EN_CHANGE reagiert, musst du</p>
<pre><code class="language-cpp">m_ctrlRichEdit.SetEventMask(m_ctrlRichEdit.GetEventMask()|ENM_CHANGE);
</code></pre>
<p>verwenden. Dann wird der EN_CHANGE-Handler, den Du mit dem ClassWizard setzt, ganz normal aufgerufen.</p>
<p>Gruss, Gio</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1222745</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1222745</guid><dc:creator><![CDATA[Gio]]></dc:creator><pubDate>Sun, 04 Feb 2007 15:34:03 GMT</pubDate></item><item><title><![CDATA[Reply to RichEdit und TreeCtrl on Mon, 05 Feb 2007 10:48:24 GMT]]></title><description><![CDATA[<p>Moin Gio,</p>
<p>danke für die Hilfe und Tipps. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> Mit dem m_ctrlRichEdit.LimitText(INT_MAX-1) kann ich nun genügend zusätzlichen Text einfügen, das reicht mir. Kann mir auch kaum vorstellen, daß in meinen Dateien jemand nochmal zusätlich über 2MB an Text reinschreiben möchte. <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="😉"
    /><br />
Was vielleicht noch ganz schön wäre, wie könnte man zusätzlich Zeilen einfügen? Bei betätigen der Eingabetaste wird in meinem RichEditor keine neue Zeile eingefügt.<br />
Sonst funktioniert alles mit dem RichEditor wunderbar. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1223138</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1223138</guid><dc:creator><![CDATA[eisherz]]></dc:creator><pubDate>Mon, 05 Feb 2007 10:48:24 GMT</pubDate></item><item><title><![CDATA[Reply to RichEdit und TreeCtrl on Mon, 05 Feb 2007 17:43:09 GMT]]></title><description><![CDATA[<p>Im Resource Editor den Property-Dialog des RE-Controls aufmachen. Unter <em><strong>Styles</strong></em> und <em><strong>Want Return</strong></em> anhaken (ich habe die englische Version der IDE, ist bei mir der letzte Schalter in der mittleren Spalte).</p>
<p>Gruss, Gio</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1223408</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1223408</guid><dc:creator><![CDATA[Gio]]></dc:creator><pubDate>Mon, 05 Feb 2007 17:43:09 GMT</pubDate></item></channel></rss>