<?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[Modaler Dialog stürzt ab bei DoModal()]]></title><description><![CDATA[<p>Folgende Situation:</p>
<p>Ich arbeite eine Datenmenge ab und wenn ein Fehler auftritt, muss ich entsprechend reagieren und möchte dem Anwender die Möglichkeit geben, dise Fehler in einem Dialog zu korrigieren.</p>
<p>Die Datenverarbeitung läuft in einer separaten Klasse ab, diese wurde von keiner MFC Klasse abgeleitet. Nun schlägt der Befehl des Nachbearbeitungsdialoges fehl.</p>
<pre><code class="language-cpp">fault_dlg.fault_code = fehler;
fault_dlg.set_data = &amp;data[i];                // Daten, die korrigiert werden sollen
fault_dlg.SetParent((CWnd *)this-&gt;p_PDialog); // p_PDialog = Pointer zum Hauptdialog
fault_dlg.DoModal();
</code></pre>
<p>Warum klappt das nicht, er läasst mich den Pointer nicht setzten. LAsse ich diese Zeile weg, dann schlägt Do Modal fehl, weil kein Parent Dialog eingetragen ist.</p>
<p>Habe ich was übersehen, oder geht das so gar nicht??</p>
<p>Ranger</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/143616/modaler-dialog-stürzt-ab-bei-domodal</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Jul 2026 18:43:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/143616.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 10 Apr 2006 11:38:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Modaler Dialog stürzt ab bei DoModal() on Mon, 10 Apr 2006 11:38:40 GMT]]></title><description><![CDATA[<p>Folgende Situation:</p>
<p>Ich arbeite eine Datenmenge ab und wenn ein Fehler auftritt, muss ich entsprechend reagieren und möchte dem Anwender die Möglichkeit geben, dise Fehler in einem Dialog zu korrigieren.</p>
<p>Die Datenverarbeitung läuft in einer separaten Klasse ab, diese wurde von keiner MFC Klasse abgeleitet. Nun schlägt der Befehl des Nachbearbeitungsdialoges fehl.</p>
<pre><code class="language-cpp">fault_dlg.fault_code = fehler;
fault_dlg.set_data = &amp;data[i];                // Daten, die korrigiert werden sollen
fault_dlg.SetParent((CWnd *)this-&gt;p_PDialog); // p_PDialog = Pointer zum Hauptdialog
fault_dlg.DoModal();
</code></pre>
<p>Warum klappt das nicht, er läasst mich den Pointer nicht setzten. LAsse ich diese Zeile weg, dann schlägt Do Modal fehl, weil kein Parent Dialog eingetragen ist.</p>
<p>Habe ich was übersehen, oder geht das so gar nicht??</p>
<p>Ranger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1034402</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1034402</guid><dc:creator><![CDATA[Glasgow_Ranger]]></dc:creator><pubDate>Mon, 10 Apr 2006 11:38:40 GMT</pubDate></item><item><title><![CDATA[Reply to Modaler Dialog stürzt ab bei DoModal() on Mon, 10 Apr 2006 18:43:29 GMT]]></title><description><![CDATA[<p>Ich habe ein ähnliches Problem.<br />
Wenn man ein Fenster öffnet das Daten anzeigt die vorher eingegeben worden sind, dann klappt es nur wenn man z.B. einen RadioButton 'int'-Werte zu weist. Nun möchte ich aber elemente je nachdem ob sie bereits gesetzt worden sind oder nicht, sichtbar oder unsichtbar machen beim aufruf. Daher habe ich diese Elemente nicht auf Wert gesetzt. Wenn man nun das Fenster aufruft schlägt es fehl. Warum weiß ich auch nicht. Klingt aber nach dem gleichen Problem wie bei Glasgow_Ranger.<br />
Ich benutzt MS Visual 6.0 und den ZusammklickWizard (ich nenn das jetzt mal einfach so!).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1034743</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1034743</guid><dc:creator><![CDATA[Von040Nach0711]]></dc:creator><pubDate>Mon, 10 Apr 2006 18:43:29 GMT</pubDate></item><item><title><![CDATA[Reply to Modaler Dialog stürzt ab bei DoModal() on Tue, 11 Apr 2006 06:29:10 GMT]]></title><description><![CDATA[<p>@von: Control-Elemente sind nur gültig, während der Dialog aktiv ist - d.h. du kannst sie nur im laufenden Betrieb verwenden. Aber du kannst auch mehrere Member mit dem selben Element verknüpfen (eine int, die du vor dem Aufruf belegst, UND ein CEdit (oder ähnliches), das während der Arbeit das Erscheinungsbild anpasst - afaik kümmert sich UpdateDate() auch darum, daß beide Elemente synchron miteinander sind).</p>
<p>@Ranger: Wie genau lautet denn der Fehler? und welchen Typ hat p_PDialog?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1034889</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1034889</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 11 Apr 2006 06:29:10 GMT</pubDate></item><item><title><![CDATA[Reply to Modaler Dialog stürzt ab bei DoModal() on Tue, 11 Apr 2006 08:43:36 GMT]]></title><description><![CDATA[<p>Also p_PDialog ist eigentlich vom Typ CMainDlg (eine Ableitung von CDialog). Ich habe mir inzwischen überlegt, folgendes zu schreiben:</p>
<pre><code class="language-cpp">fault_dlg.fault_code = fehler;
fault_dlg.set_data = &amp;data[i];                // Daten, die korrigiert werden sollen
fault_dlg.SetParent(AfxGetMainWnd()); // An Hauptfenster koppeln
fault_dlg.DoModal();
</code></pre>
<p>Ich kam aber noch nicht dazu das zu testen. Melde mich, wenn es so funktioniert.</p>
<p>Danke, Ranger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1034973</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1034973</guid><dc:creator><![CDATA[Glasgow_Ranger]]></dc:creator><pubDate>Tue, 11 Apr 2006 08:43:36 GMT</pubDate></item><item><title><![CDATA[Reply to Modaler Dialog stürzt ab bei DoModal() on Tue, 11 Apr 2006 09:45:46 GMT]]></title><description><![CDATA[<p>Das war der Versuch, den ich meinte. Die Debug Assertions entstehen dann in den jeweiligen MFC Dateien, also dlgcore.cpp oder so. Also kann ich damit nix anfangen.</p>
<pre><code class="language-cpp">if(fehler != 0)
{
	fault_dlg.fault_code = fehler;
	fault_dlg.set_data = &amp;data[i];
	fault_dlg.SetParent(AfxGetMainWnd()); // Debug Assertion Nr. 1
	fault_dlg.DoModal();                  // Debug Assertion 2, wenn Zeile Vorher weggelassen wird
}
</code></pre>
<p>Wäre schön, wenn jemand ne lösung hätte, ich möchte an der Stelle einen Modalen Dialog haben, damit der Rest ausgeblendet (inaktiv) ist. Hat noch jemand eine Idee?<br />
Was vielleicht noch interessant ist, dass an den Hauptdialog schon ein Nichtmodaler Dialog gekoppelt ist. Geht es überhaup, dass zwei Dialoge an den Hauptdialog gekoppelt werden?</p>
<p>Danke, Ranger</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1035022</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1035022</guid><dc:creator><![CDATA[Glasgow_Ranger]]></dc:creator><pubDate>Tue, 11 Apr 2006 09:45:46 GMT</pubDate></item></channel></rss>