<?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[Designfrage: MFC-Dialogfeldanwendung]]></title><description><![CDATA[<p>Ich habe eine Dialogfeldanwendung mit MFC erstellt, die zwei PropertyPages<br />
mit jeweils eigenen Klassen enthält.<br />
Ferner gibt es eine Klasse &quot;Foo&quot;, in der meine Daten verwaltet werden<br />
und auf die sowohl die Hauptdialogfeldklasse als auch beide Klassen der PropertyPages vollen Zugriff haben müssen.<br />
Wie designe ich das am besten?<br />
Dankeschöne für Mühen und Antworten <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="🙂"
    /><br />
Gruß<br />
E-the-Real</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/84855/designfrage-mfc-dialogfeldanwendung</link><generator>RSS for Node</generator><lastBuildDate>Sun, 12 Apr 2026 07:19:20 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/84855.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 02 Sep 2004 21:57:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Designfrage: MFC-Dialogfeldanwendung on Thu, 02 Sep 2004 21:57:42 GMT]]></title><description><![CDATA[<p>Ich habe eine Dialogfeldanwendung mit MFC erstellt, die zwei PropertyPages<br />
mit jeweils eigenen Klassen enthält.<br />
Ferner gibt es eine Klasse &quot;Foo&quot;, in der meine Daten verwaltet werden<br />
und auf die sowohl die Hauptdialogfeldklasse als auch beide Klassen der PropertyPages vollen Zugriff haben müssen.<br />
Wie designe ich das am besten?<br />
Dankeschöne für Mühen und Antworten <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="🙂"
    /><br />
Gruß<br />
E-the-Real</p>
]]></description><link>https://www.c-plusplus.net/forum/post/598322</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/598322</guid><dc:creator><![CDATA[ethereal]]></dc:creator><pubDate>Thu, 02 Sep 2004 21:57:42 GMT</pubDate></item><item><title><![CDATA[Reply to Designfrage: MFC-Dialogfeldanwendung on Fri, 03 Sep 2004 01:34:08 GMT]]></title><description><![CDATA[<p>zB so:</p>
<p>dialog_1 und dialog_2 haben jeweils die mebervariable Foo* m_poFoo;</p>
<p>in Foo:</p>
<pre><code class="language-cpp">CDialog_1* poDialog_1 = new CDialog_1();
poDialog_1-&gt;m_poFoo = this;
CDialog_2* poDialog_2 = new CDialog_2();
poDialog_1-&gt;m_poFoo = this;
</code></pre>
<p>du kannst den pointer auch im view oder von woanders zuweissen.</p>
<p>alternativ kannstes noch ueber einen theApp-pointer machen.</p>
<p>Esco</p>
]]></description><link>https://www.c-plusplus.net/forum/post/598374</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/598374</guid><dc:creator><![CDATA[Esco]]></dc:creator><pubDate>Fri, 03 Sep 2004 01:34:08 GMT</pubDate></item><item><title><![CDATA[Reply to Designfrage: MFC-Dialogfeldanwendung on Fri, 03 Sep 2004 08:47:04 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">CDialog_1* poDialog_1 = new CDialog_1();
poDialog_1-&gt;m_poFoo = this;
CDialog_2* poDialog_2 = new CDialog_2();
poDialog_1-&gt;m_poFoo = this;
</code></pre>
<p>Der untere Zeiger heisst doch bestimmt poDialog_2, oder?</p>
<p>edit: Schmarn geschrieben <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Also in der Foo-Klasse werden zwei Zeiger der Dialogfelder auf Foo initialisiert... hmmm, das heisst, ich müsste für jede Klasse, die Foo benutzt, in Foo die Zeiger initialisieren.<br />
Das gefällt mir nicht so gut, da Foo eigentlich eine Klasse sein soll, die unabhängig von den anderen Klassen verwendet werden kann, also man sollte in der Klasse nichts extra anpassen müssen.<br />
Bei Doc/View würde man die Instanz der Klasse in der Doc-Klasse erstellen und dann in den anderen Klassen über GetDocument() auf das Objekt zugreifen.<br />
Gibt es dazu eine analoge Möglichkeit in DlgFeldern?<br />
Wie meintest du deine Idee mit theApp?<br />
Gruß</p>
]]></description><link>https://www.c-plusplus.net/forum/post/598533</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/598533</guid><dc:creator><![CDATA[ethereal]]></dc:creator><pubDate>Fri, 03 Sep 2004 08:47:04 GMT</pubDate></item><item><title><![CDATA[Reply to Designfrage: MFC-Dialogfeldanwendung on Fri, 03 Sep 2004 09:19:38 GMT]]></title><description><![CDATA[<p>Du hast ja ein globales Objekt theApp. Über dieses kannst du theoretisch jede Kommunikation realisieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/598571</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/598571</guid><dc:creator><![CDATA[proga]]></dc:creator><pubDate>Fri, 03 Sep 2004 09:19:38 GMT</pubDate></item><item><title><![CDATA[Reply to Designfrage: MFC-Dialogfeldanwendung on Mon, 06 Sep 2004 08:37:33 GMT]]></title><description><![CDATA[<p>deklariere einfach die Variable in der Applikationsklasse und hole dir mit</p>
<pre><code class="language-cpp">CDeineApp* pApp = (CDeineApp*) AfxGetApp();
</code></pre>
<p>einen Zeiger auf die Klasse</p>
]]></description><link>https://www.c-plusplus.net/forum/post/598573</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/598573</guid><dc:creator><![CDATA[Horst2]]></dc:creator><pubDate>Mon, 06 Sep 2004 08:37:33 GMT</pubDate></item><item><title><![CDATA[Reply to Designfrage: MFC-Dialogfeldanwendung on Fri, 03 Sep 2004 10:41:51 GMT]]></title><description><![CDATA[<p>Ahja, got it...<br />
ich staune immer wieder über dieses merkwürdige MFC-Klassenparadigma:<br />
Einerseits ist jede Kleinigkeit als Klasse gekapselt, andererseits gibt's globale Objekte... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> zerstört sich imho an manchen Stellen selbst, aber das wird OT.<br />
Thx &amp; Gruß<br />
<em>E-the-Real</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/598643</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/598643</guid><dc:creator><![CDATA[ethereal]]></dc:creator><pubDate>Fri, 03 Sep 2004 10:41:51 GMT</pubDate></item><item><title><![CDATA[Reply to Designfrage: MFC-Dialogfeldanwendung on Fri, 03 Sep 2004 11:48:39 GMT]]></title><description><![CDATA[<p>ethereal schrieb:</p>
<blockquote>
<p>Ahja, got it...<br />
ich staune immer wieder über dieses merkwürdige MFC-Klassenparadigma:<br />
Einerseits ist jede Kleinigkeit als Klasse gekapselt, andererseits gibt's globale Objekte... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> zerstört sich imho an manchen Stellen selbst, aber das wird OT.<br />
Thx &amp; Gruß<br />
<em>E-the-Real</em></p>
</blockquote>
<p>the App ist nicht wirklich global. du musst es jedesmal (zumindest in der 5er) einbinden.<br />
das ist nix MFC-spezifisches, das problem haste ja immer. du kannst das auch umgehen, indem du zB in theApp oder woanders einzelne pakete mit pointern auf andere objekte zusammenstellst und diese dann trotz einbinden nur 'friend-klassen' zur verfuegung stellst.</p>
<p>Esco</p>
]]></description><link>https://www.c-plusplus.net/forum/post/598709</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/598709</guid><dc:creator><![CDATA[Esco]]></dc:creator><pubDate>Fri, 03 Sep 2004 11:48:39 GMT</pubDate></item></channel></rss>