<?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[Aus einem Objekt heraus private Variablen eines anderen Objekts ändern]]></title><description><![CDATA[<p>Hallo zusammen ...</p>
<p>Ich habe bis jetzt quasi noch gar nicht mit objektorientiert programmiert. Da ich mich jetzt allerdings an die Programmierung einer grafischen Benutzeroberfläche machen muss, komme ich wohl nicht drum rum. ich habe mich schon belesen, aber an einem Punkt komme ich nicht weiter...</p>
<p>Ich habe ein Objekt, welches einem Fenster (Form?!) entspricht. Dieses beinhaltet verschiedene Variablen. Durch das Anklicken eines Buttons wird ein neues Fenster (Form) geöffnet. Dieses entspricht einem neuen Objekt.</p>
<p>Jetzt würde ich gern aus diesem zweiten Fenster (private) Variablen aus dem ersten Fenster Verändern. Sprich mit einem Objekt die Variablen eines anderen ändern.</p>
<p>Wenn ich das richtig verstehe ist das Problem bei der ganzen Geschichte, dass das zweite Objekt das erste ja &quot;nicht kennt&quot;. Wie kann ich dieses Problem lösen?</p>
<p>Vielen Danks chonmal für euere Hilfe <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="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/258800/aus-einem-objekt-heraus-private-variablen-eines-anderen-objekts-ändern</link><generator>RSS for Node</generator><lastBuildDate>Wed, 09 Sep 2026 04:04:08 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/258800.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 15 Jan 2010 10:31:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Aus einem Objekt heraus private Variablen eines anderen Objekts ändern on Fri, 15 Jan 2010 10:31:21 GMT]]></title><description><![CDATA[<p>Hallo zusammen ...</p>
<p>Ich habe bis jetzt quasi noch gar nicht mit objektorientiert programmiert. Da ich mich jetzt allerdings an die Programmierung einer grafischen Benutzeroberfläche machen muss, komme ich wohl nicht drum rum. ich habe mich schon belesen, aber an einem Punkt komme ich nicht weiter...</p>
<p>Ich habe ein Objekt, welches einem Fenster (Form?!) entspricht. Dieses beinhaltet verschiedene Variablen. Durch das Anklicken eines Buttons wird ein neues Fenster (Form) geöffnet. Dieses entspricht einem neuen Objekt.</p>
<p>Jetzt würde ich gern aus diesem zweiten Fenster (private) Variablen aus dem ersten Fenster Verändern. Sprich mit einem Objekt die Variablen eines anderen ändern.</p>
<p>Wenn ich das richtig verstehe ist das Problem bei der ganzen Geschichte, dass das zweite Objekt das erste ja &quot;nicht kennt&quot;. Wie kann ich dieses Problem lösen?</p>
<p>Vielen Danks chonmal für euere Hilfe <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="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1839180</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1839180</guid><dc:creator><![CDATA[Mandel]]></dc:creator><pubDate>Fri, 15 Jan 2010 10:31:21 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einem Objekt heraus private Variablen eines anderen Objekts ändern on Fri, 15 Jan 2010 10:48:25 GMT]]></title><description><![CDATA[<p>du könntest dem neuen Fenster das alte per Pointer quasi als &quot;Vater&quot; (oder Mutter) übergeben.</p>
<p>Zugriff auf private Attribute stellst du entweder über entsprechende öffentliche Methoden (gute Lösung) oder über <code>friend</code> her (weniger gute Lösung)</p>
<p>Ich empfehle dir aber entsprechende Lektüre zu dem Thema. Das ganze ist nicht trivial</p>
<p>Welches GUI-Framework verwendest du? Dann kann man dir vll auch konkrete Tipps geben</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1839193</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1839193</guid><dc:creator><![CDATA[zwutz]]></dc:creator><pubDate>Fri, 15 Jan 2010 10:48:25 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einem Objekt heraus private Variablen eines anderen Objekts ändern on Fri, 15 Jan 2010 13:25:58 GMT]]></title><description><![CDATA[<p>Vielen Dank erstmal für deine Antwort.</p>
<p>Ich Versuche mich zZ an QT4 in Verbindung mit dem VS 2008 Express.<br />
Ich hab das mit dem Pointer übergeben mal so versucht, wie du es gesagt hast. Leider bekomme ich dann immer einen Absturz (&quot;Unbehandelte Ausnahme bei 0x10...&quot;) sobald ich das zweite Fenster öffnen möchte.</p>
<p>Vielleicht hab ich deinen Rat aber auch nur falsch umgesetzt ?!<br />
So hab ichs gemacht:</p>
<p>Erzeugen des neuen Objekts und Übergabe des Zeigers auf das aktuelle Fenster mit &quot;this&quot;:</p>
<pre><code>void myQtApp::start_new()
{
    myNewQtApp *Ndialog = new myNewQtApp(this);
    Ndialog-&gt;show();	
}
</code></pre>
<p>Der Konstruktor für die Klasse des neuen Fensters (myNewQtApp) sieht dann wie folgt aus:</p>
<pre><code>myNewQtApp::myNewQtApp(myQtApp *MWindow,QWidget *parent)
{
	setupUi(this); // this sets up GUI
	connect( pushButton_Box, SIGNAL( clicked() ), this, SLOT( InfoBox() ) ); 

	text=MWindow-&gt;GetText();
}
</code></pre>
<p>Wobei &quot;GetText()&quot; folgendermaßen definiert ist:</p>
<pre><code>QString myQtApp::GetText()
{
	return textEdit-&gt;toPlainText();
}
</code></pre>
<p>Ich hoffe einfach mal, dass ihr da durchseht, auch ohne euch mit Qt auszukennen. Ich gehe doch stark davon aus, dass das Problem auch leicht zu verallgemeinern ist...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1839273</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1839273</guid><dc:creator><![CDATA[Mandel]]></dc:creator><pubDate>Fri, 15 Jan 2010 13:25:58 GMT</pubDate></item><item><title><![CDATA[Reply to Aus einem Objekt heraus private Variablen eines anderen Objekts ändern on Fri, 15 Jan 2010 15:11:49 GMT]]></title><description><![CDATA[<p>Ah Qt... schau dir einfach mal die unzähligen Beispiele im assistant an, die dürften weiterhelfen</p>
<p>Jedes von QObject abgeleitete Objekt (also alle Fenster, Steuerelemente und auch diverse andere Klassen) nehmen im Konstruktor als ersten Parameter einen Zeiger auf den parent</p>
<p>ein typischer Konstruktor einer von QWidget abgeleiteten Klasse sieht so aus:</p>
<pre><code class="language-cpp">CustomWidget::CustomWidget(QWidget* parent)
: QWidget(parent)
{
  //...
}
</code></pre>
<p>und erstellt wird es so:</p>
<pre><code class="language-cpp">void YourMainWindow::showWidget()
{
  CustomWidget* w = new CustomWidget(this);

  w-&gt;show();
}
</code></pre>
<p>wichtig ist, dass der parent an die Basisklasse weitergeleitet wird. Dessen Destruktor übernimmt dann das lästige aufräumen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1839350</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1839350</guid><dc:creator><![CDATA[zwutz]]></dc:creator><pubDate>Fri, 15 Jan 2010 15:11:49 GMT</pubDate></item></channel></rss>