<?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[Methodenaufruf im aktiven Child-Fenster]]></title><description><![CDATA[<p>[cpp] Hallo Profis</p>
<p>Ich habe eine Frage, in Childfenster habe ich das eigentliche Programm erstellt. Nun möchte ich mittels Button im MainFrame auf Methoden im Child-Fenster zugreifen. Dies funktioniert so weit, aber immer nur im ersten geöffneten Fenster, also wenn ich ein neues Child öffne und auf die Buttons klicke, geschehen die Änderungen nur im ersten.</p>
<p>Wie kann ich bewerkstelligen, dass diese Aufrufe nur im aktiven Child-Fenster geschehen?</p>
<p>Mittels frmMDIChild-&gt;... kann ich auf diese Methoden zugreifen, muss also nur noch im richtigen Fenster geschehen!</p>
<p>Code MainFrame.h</p>
<p>//---------------------------------------------------------------------------</p>
<p>#ifndef MDIFrameH<br />
#define MDIFrameH<br />
//---------------------------------------------------------------------------<br />
#include &lt;Classes.hpp&gt;<br />
#include &lt;Controls.hpp&gt;<br />
#include &lt;StdCtrls.hpp&gt;<br />
#include &lt;Forms.hpp&gt;<br />
#include &lt;Menus.hpp&gt;<br />
#include &lt;ComCtrls.hpp&gt;<br />
#include &lt;ImgList.hpp&gt;<br />
#include &lt;ToolWin.hpp&gt;<br />
//---------------------------------------------------------------------------<br />
class TfrmMDIFrame : public TForm<br />
{<br />
__published: // Von der IDE verwaltete Komponenten<br />
TMainMenu *m_mnuMain;<br />
TMenuItem *Datei1;<br />
TMenuItem *Neu1;<br />
TMenuItem *Schliessen1;<br />
TMenuItem *Allesschliessen1;<br />
TMenuItem *Beenden1;<br />
TMenuItem *Fenster1;<br />
TMenuItem *Horizontal1;<br />
TMenuItem *Vertikal1;<br />
TMenuItem *berlappend1;<br />
TMenuItem *Ikonsanordnen1;<br />
TMenuItem *Hilfe1;<br />
TMenuItem *ber1;<br />
TToolBar *ToolBar1;<br />
TToolButton *ToolButton1;<br />
TImageList *ImageList1;<br />
TToolButton *ToolButton2;<br />
TToolButton *ToolButton3;<br />
TToolButton *ToolButton4;<br />
TToolButton *ToolButton5;<br />
TToolButton *ToolButton6;<br />
TToolButton *ToolButton7;<br />
TToolButton *ToolButton8;<br />
TToolButton *ToolButton9;<br />
TToolButton *ToolButton10;<br />
TToolButton *ToolButton11;<br />
TToolButton *ToolButton12;<br />
TToolButton *ToolButton13;<br />
TToolButton *ToolButton14;<br />
TToolButton *ToolButton15;<br />
TToolButton *ToolButton16;<br />
void __fastcall Horizontal1Click(TObject *Sender);<br />
void __fastcall Vertikal1Click(TObject *Sender);<br />
void __fastcall berlappend1Click(TObject *Sender);<br />
void __fastcall Ikonsanordnen1Click(TObject *Sender);<br />
void __fastcall Neu1Click(TObject *Sender);<br />
void __fastcall Schliessen1Click(TObject *Sender);<br />
void __fastcall Allesschliessen1Click(TObject *Sender);<br />
void __fastcall Beenden1Click(TObject *Sender);<br />
void __fastcall ToolButton5Click(TObject *Sender);<br />
void __fastcall ToolButton11Click(TObject *Sender);<br />
void __fastcall ToolButton12Click(TObject <em>Sender);<br />
private: // Anwender-Deklarationen<br />
public: // Anwender-Deklarationen<br />
__fastcall TfrmMDIFrame(TComponent</em> Owner);<br />
};<br />
//---------------------------------------------------------------------------<br />
extern PACKAGE TfrmMDIFrame *frmMDIFrame;<br />
//---------------------------------------------------------------------------<br />
#endif</p>
<p>Code MainFrame.cpp</p>
<p>//---------------------------------------------------------------------------</p>
<p>#include &lt;vcl.h&gt;<br />
#pragma hdrstop</p>
<p>#include &quot;MDIFrame.h&quot;<br />
#include &quot;MDIChild.h&quot;<br />
//---------------------------------------------------------------------------<br />
#pragma package(smart_init)<br />
#pragma resource &quot;*.dfm&quot;<br />
TfrmMDIFrame <em>frmMDIFrame;<br />
//---------------------------------------------------------------------------<br />
__fastcall TfrmMDIFrame::TfrmMDIFrame(TComponent</em> Owner)<br />
: TForm(Owner)<br />
{<br />
}<br />
//---------------------------------------------------------------------------<br />
void __fastcall TfrmMDIFrame::Horizontal1Click(TObject *Sender)<br />
{<br />
TileMode = tbHorizontal;<br />
Tile();<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Vertikal1Click(TObject *Sender)<br />
{<br />
TileMode = tbVertical;<br />
Tile();<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::berlappend1Click(TObject *Sender)<br />
{<br />
Cascade();<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Ikonsanordnen1Click(TObject *Sender)<br />
{<br />
ArrangeIcons();<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Neu1Click(TObject *Sender)<br />
{<br />
TfrmMDIChild *pMIDChild = new TfrmMDIChild(this);<br />
/* if (pMIDChild-&gt;m_OleContainer-&gt;InsertObjectDialog()){<br />
if (pMIDChild-&gt;m_OleContainer-&gt;NewInserted){<br />
pMIDChild-&gt;m_OleContainer-&gt;DoVerb(ovPrimary);<br />
}<br />
} */<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Schliessen1Click(TObject *Sender)<br />
{<br />
if (ActiveMDIChild != NULL){<br />
ActiveMDIChild-&gt;Close();<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Allesschliessen1Click(TObject *Sender)<br />
{<br />
for (int i = 0; i &lt; MDIChildCount; i++){<br />
MDIChildren[i]-&gt;Close();<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Beenden1Click(TObject *Sender)<br />
{<br />
Close();<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::ToolButton5Click(TObject *Sender)<br />
{<br />
if (ActiveMDIChild != NULL){<br />
ActiveMDIChild-&gt;Close();<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::ToolButton11Click(TObject *Sender)<br />
{<br />
if (ActiveMDIChild != NULL){<br />
frmMDIChild-&gt;Undo();<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::ToolButton12Click(TObject *Sender)<br />
{<br />
if (ActiveMDIChild != NULL){<br />
frmMDIChild-&gt;Redo();<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>Besten Dank für Eure Antworten</p>
<p>Gomso</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/162329/methodenaufruf-im-aktiven-child-fenster</link><generator>RSS for Node</generator><lastBuildDate>Tue, 11 Aug 2026 19:25:38 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/162329.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 17 Oct 2006 16:56:30 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Methodenaufruf im aktiven Child-Fenster on Tue, 17 Oct 2006 16:56:30 GMT]]></title><description><![CDATA[<p>[cpp] Hallo Profis</p>
<p>Ich habe eine Frage, in Childfenster habe ich das eigentliche Programm erstellt. Nun möchte ich mittels Button im MainFrame auf Methoden im Child-Fenster zugreifen. Dies funktioniert so weit, aber immer nur im ersten geöffneten Fenster, also wenn ich ein neues Child öffne und auf die Buttons klicke, geschehen die Änderungen nur im ersten.</p>
<p>Wie kann ich bewerkstelligen, dass diese Aufrufe nur im aktiven Child-Fenster geschehen?</p>
<p>Mittels frmMDIChild-&gt;... kann ich auf diese Methoden zugreifen, muss also nur noch im richtigen Fenster geschehen!</p>
<p>Code MainFrame.h</p>
<p>//---------------------------------------------------------------------------</p>
<p>#ifndef MDIFrameH<br />
#define MDIFrameH<br />
//---------------------------------------------------------------------------<br />
#include &lt;Classes.hpp&gt;<br />
#include &lt;Controls.hpp&gt;<br />
#include &lt;StdCtrls.hpp&gt;<br />
#include &lt;Forms.hpp&gt;<br />
#include &lt;Menus.hpp&gt;<br />
#include &lt;ComCtrls.hpp&gt;<br />
#include &lt;ImgList.hpp&gt;<br />
#include &lt;ToolWin.hpp&gt;<br />
//---------------------------------------------------------------------------<br />
class TfrmMDIFrame : public TForm<br />
{<br />
__published: // Von der IDE verwaltete Komponenten<br />
TMainMenu *m_mnuMain;<br />
TMenuItem *Datei1;<br />
TMenuItem *Neu1;<br />
TMenuItem *Schliessen1;<br />
TMenuItem *Allesschliessen1;<br />
TMenuItem *Beenden1;<br />
TMenuItem *Fenster1;<br />
TMenuItem *Horizontal1;<br />
TMenuItem *Vertikal1;<br />
TMenuItem *berlappend1;<br />
TMenuItem *Ikonsanordnen1;<br />
TMenuItem *Hilfe1;<br />
TMenuItem *ber1;<br />
TToolBar *ToolBar1;<br />
TToolButton *ToolButton1;<br />
TImageList *ImageList1;<br />
TToolButton *ToolButton2;<br />
TToolButton *ToolButton3;<br />
TToolButton *ToolButton4;<br />
TToolButton *ToolButton5;<br />
TToolButton *ToolButton6;<br />
TToolButton *ToolButton7;<br />
TToolButton *ToolButton8;<br />
TToolButton *ToolButton9;<br />
TToolButton *ToolButton10;<br />
TToolButton *ToolButton11;<br />
TToolButton *ToolButton12;<br />
TToolButton *ToolButton13;<br />
TToolButton *ToolButton14;<br />
TToolButton *ToolButton15;<br />
TToolButton *ToolButton16;<br />
void __fastcall Horizontal1Click(TObject *Sender);<br />
void __fastcall Vertikal1Click(TObject *Sender);<br />
void __fastcall berlappend1Click(TObject *Sender);<br />
void __fastcall Ikonsanordnen1Click(TObject *Sender);<br />
void __fastcall Neu1Click(TObject *Sender);<br />
void __fastcall Schliessen1Click(TObject *Sender);<br />
void __fastcall Allesschliessen1Click(TObject *Sender);<br />
void __fastcall Beenden1Click(TObject *Sender);<br />
void __fastcall ToolButton5Click(TObject *Sender);<br />
void __fastcall ToolButton11Click(TObject *Sender);<br />
void __fastcall ToolButton12Click(TObject <em>Sender);<br />
private: // Anwender-Deklarationen<br />
public: // Anwender-Deklarationen<br />
__fastcall TfrmMDIFrame(TComponent</em> Owner);<br />
};<br />
//---------------------------------------------------------------------------<br />
extern PACKAGE TfrmMDIFrame *frmMDIFrame;<br />
//---------------------------------------------------------------------------<br />
#endif</p>
<p>Code MainFrame.cpp</p>
<p>//---------------------------------------------------------------------------</p>
<p>#include &lt;vcl.h&gt;<br />
#pragma hdrstop</p>
<p>#include &quot;MDIFrame.h&quot;<br />
#include &quot;MDIChild.h&quot;<br />
//---------------------------------------------------------------------------<br />
#pragma package(smart_init)<br />
#pragma resource &quot;*.dfm&quot;<br />
TfrmMDIFrame <em>frmMDIFrame;<br />
//---------------------------------------------------------------------------<br />
__fastcall TfrmMDIFrame::TfrmMDIFrame(TComponent</em> Owner)<br />
: TForm(Owner)<br />
{<br />
}<br />
//---------------------------------------------------------------------------<br />
void __fastcall TfrmMDIFrame::Horizontal1Click(TObject *Sender)<br />
{<br />
TileMode = tbHorizontal;<br />
Tile();<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Vertikal1Click(TObject *Sender)<br />
{<br />
TileMode = tbVertical;<br />
Tile();<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::berlappend1Click(TObject *Sender)<br />
{<br />
Cascade();<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Ikonsanordnen1Click(TObject *Sender)<br />
{<br />
ArrangeIcons();<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Neu1Click(TObject *Sender)<br />
{<br />
TfrmMDIChild *pMIDChild = new TfrmMDIChild(this);<br />
/* if (pMIDChild-&gt;m_OleContainer-&gt;InsertObjectDialog()){<br />
if (pMIDChild-&gt;m_OleContainer-&gt;NewInserted){<br />
pMIDChild-&gt;m_OleContainer-&gt;DoVerb(ovPrimary);<br />
}<br />
} */<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Schliessen1Click(TObject *Sender)<br />
{<br />
if (ActiveMDIChild != NULL){<br />
ActiveMDIChild-&gt;Close();<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Allesschliessen1Click(TObject *Sender)<br />
{<br />
for (int i = 0; i &lt; MDIChildCount; i++){<br />
MDIChildren[i]-&gt;Close();<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::Beenden1Click(TObject *Sender)<br />
{<br />
Close();<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::ToolButton5Click(TObject *Sender)<br />
{<br />
if (ActiveMDIChild != NULL){<br />
ActiveMDIChild-&gt;Close();<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::ToolButton11Click(TObject *Sender)<br />
{<br />
if (ActiveMDIChild != NULL){<br />
frmMDIChild-&gt;Undo();<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TfrmMDIFrame::ToolButton12Click(TObject *Sender)<br />
{<br />
if (ActiveMDIChild != NULL){<br />
frmMDIChild-&gt;Redo();<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>Besten Dank für Eure Antworten</p>
<p>Gomso</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1156471</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1156471</guid><dc:creator><![CDATA[gomso]]></dc:creator><pubDate>Tue, 17 Oct 2006 16:56:30 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenaufruf im aktiven Child-Fenster on Tue, 17 Oct 2006 17:05:10 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>- das gehört ins Builder-Subforum<br />
- benutze für Posten von Code hier im Forum die CPP-Tags<br />
- siehe die Eigenschaft <em>TCustomForm::ActiveMDIChild</em> in der BCB-Hilfe</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1156476</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1156476</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Tue, 17 Oct 2006 17:05:10 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenaufruf im aktiven Child-Fenster on Wed, 18 Oct 2006 08:16:07 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/profile.php?mode=viewprofile&amp;u=403" rel="nofollow">HumeSikkins</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum.php?f=15" rel="nofollow">C++</a> in das Forum <a href="http://www.c-plusplus.net/forum/viewforum.php?f=2" rel="nofollow">VCL/CLX (Borland C++ Builder)</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39405" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1156793</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1156793</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Wed, 18 Oct 2006 08:16:07 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenaufruf im aktiven Child-Fenster on Wed, 18 Oct 2006 10:39:55 GMT]]></title><description><![CDATA[<p>Du mußt die Variable 'ActiveMDIChild' verwenden, z.B.</p>
<pre><code class="language-cpp">if (ActiveMDIChild != NULL)
  static_cast&lt;TMDIChild*&gt;(ActiveMDIChild)-&gt;Undo();
</code></pre>
<p>Der static_cast ist erforderlich, da das MDI-Formular irgendwelche TForms als Child engegennehmen kann, du hier aber eben dein spezielles MDIChild benötigst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1156952</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1156952</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Wed, 18 Oct 2006 10:39:55 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenaufruf im aktiven Child-Fenster on Wed, 18 Oct 2006 16:43:29 GMT]]></title><description><![CDATA[<p>Th schrieb:</p>
<blockquote>
<p>Du mußt die Variable 'ActiveMDIChild' verwenden, z.B.</p>
<pre><code class="language-cpp">if (ActiveMDIChild != NULL)
  static_cast&lt;TMDIChild*&gt;(ActiveMDIChild)-&gt;Undo();
</code></pre>
<p>Der static_cast ist erforderlich, da das MDI-Formular irgendwelche TForms als Child engegennehmen kann, du hier aber eben dein spezielles MDIChild benötigst.</p>
</blockquote>
<p>hey, genau das wollte ich, wäre ich nie darauf gekommen, Du bist einsame Spitze, besten Dank</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1157224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1157224</guid><dc:creator><![CDATA[gomso]]></dc:creator><pubDate>Wed, 18 Oct 2006 16:43:29 GMT</pubDate></item><item><title><![CDATA[Reply to Methodenaufruf im aktiven Child-Fenster on Thu, 19 Oct 2006 09:38:25 GMT]]></title><description><![CDATA[<blockquote>
<p>Du bist einsame Spitze, besten Dank</p>
</blockquote>
<p>Bin ja auch Profi!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1157505</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1157505</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Thu, 19 Oct 2006 09:38:25 GMT</pubDate></item></channel></rss>