<?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[Click bzw. OnClick bei dynamisch erzeugten Buttons]]></title><description><![CDATA[<p>Code:<br />
in der Header</p>
<pre><code class="language-cpp">DynamicArray&lt;TButton*&gt; TeilButton;
</code></pre>
<p>im Programm</p>
<pre><code class="language-cpp">{
TeilButton.Length++;
TeilButton[i] = new TeilButton(Handle);
TeilButton[i]-&gt;Caption = i;
TeilButton[i]-&gt;Left = 0;
TeilButton[i]-&gt;Top = s;
TeilButton[i]-&gt;Height = 20;
TeilButton[i]-&gt;Width = 20;
TeilButton[i]-&gt;Parent = Panel1;
i++;
s +=25;
}
</code></pre>
<p>der dynamisch erzeugte Button soll bei dem OnClick()-Ereignis die Möglichkeit bieten den angeklickten Button innerhalb des Panels zu bewegen.<br />
Also was normalerweise über die Ereignisfunktion normaler Buttons</p>
<pre><code class="language-cpp">void __fastcall TForm1::Button1Click(TObject *Sender)
{
  // Code zum Ändern der Buttonposition
}
</code></pre>
<p>gemacht wird, will ich nun mit den dynamisch erzeugten Buttons machen.</p>
<pre><code class="language-cpp">void __fastcall TForm1::TeilButton[i]Click(Tobject *Sender)  // als Bsp.
{
  // Code zum Ändern der Buttonposition
}
</code></pre>
<p>Leider habe ich bis jetzt keinen Erfolg bei der Realisierung dabei gehabt.<br />
Ich habe daran gedacht, die Funktion OnClick() zu überladen, aber das läßt der Compiler nicht zu.<br />
Habt ihr Ideen, wie ich das machen kann, mir fällt nix mehr dazu ein.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/104430/click-bzw-onclick-bei-dynamisch-erzeugten-buttons</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Jul 2026 22:48:02 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/104430.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 19 Mar 2005 15:14:15 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Click bzw. OnClick bei dynamisch erzeugten Buttons on Sat, 19 Mar 2005 15:14:15 GMT]]></title><description><![CDATA[<p>Code:<br />
in der Header</p>
<pre><code class="language-cpp">DynamicArray&lt;TButton*&gt; TeilButton;
</code></pre>
<p>im Programm</p>
<pre><code class="language-cpp">{
TeilButton.Length++;
TeilButton[i] = new TeilButton(Handle);
TeilButton[i]-&gt;Caption = i;
TeilButton[i]-&gt;Left = 0;
TeilButton[i]-&gt;Top = s;
TeilButton[i]-&gt;Height = 20;
TeilButton[i]-&gt;Width = 20;
TeilButton[i]-&gt;Parent = Panel1;
i++;
s +=25;
}
</code></pre>
<p>der dynamisch erzeugte Button soll bei dem OnClick()-Ereignis die Möglichkeit bieten den angeklickten Button innerhalb des Panels zu bewegen.<br />
Also was normalerweise über die Ereignisfunktion normaler Buttons</p>
<pre><code class="language-cpp">void __fastcall TForm1::Button1Click(TObject *Sender)
{
  // Code zum Ändern der Buttonposition
}
</code></pre>
<p>gemacht wird, will ich nun mit den dynamisch erzeugten Buttons machen.</p>
<pre><code class="language-cpp">void __fastcall TForm1::TeilButton[i]Click(Tobject *Sender)  // als Bsp.
{
  // Code zum Ändern der Buttonposition
}
</code></pre>
<p>Leider habe ich bis jetzt keinen Erfolg bei der Realisierung dabei gehabt.<br />
Ich habe daran gedacht, die Funktion OnClick() zu überladen, aber das läßt der Compiler nicht zu.<br />
Habt ihr Ideen, wie ich das machen kann, mir fällt nix mehr dazu ein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/748274</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/748274</guid><dc:creator><![CDATA[gotoxy*arcor.de]]></dc:creator><pubDate>Sat, 19 Mar 2005 15:14:15 GMT</pubDate></item><item><title><![CDATA[Reply to Click bzw. OnClick bei dynamisch erzeugten Buttons on Sat, 19 Mar 2005 15:40:31 GMT]]></title><description><![CDATA[<p>Ich verstehe dein Problem nicht ganz!</p>
<p>Wieso nimmst du nicht eine einzige Funktion und lässt diese beim Klick auf alle Buttons aufrufen (also eine, die die Aktion bei allen Buttons zentral regelt)? Anhand des Sender-Parameters könntest du dann auch deine Buttons identifizieren, wieso willst du verschiedene Funktionen verwenden?</p>
<p>Ich meine dass so:</p>
<pre><code class="language-cpp">DynamicArray&lt;TButton*&gt; TeilButton;
// ...
TeilButton.Length++;
TeilButton[i] = new TeilButton(Handle);
TeilButton[i]-&gt;Caption = i;
TeilButton[i]-&gt;Left = 0;
TeilButton[i]-&gt;Top = s;
TeilButton[i]-&gt;Height = 20;
TeilButton[i]-&gt;Width = 20;
TeilButton[i]-&gt;Parent = Panel1;
TeilButton[i]-&gt;OnClick = Button1Click;
i++;
s +=25;

//...
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  // Code zum Ändern der Buttonposition
  // hier gegebenenfalls mit dynamic_cast&lt;TButton*&gt;(Sender) den Button identifizieren.
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/748289</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/748289</guid><dc:creator><![CDATA[Reyx]]></dc:creator><pubDate>Sat, 19 Mar 2005 15:40:31 GMT</pubDate></item><item><title><![CDATA[Reply to Click bzw. OnClick bei dynamisch erzeugten Buttons on Sat, 19 Mar 2005 19:19:20 GMT]]></title><description><![CDATA[<p>Ich denke mal in der FAQ steht da ausführlich was zu.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/748454</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/748454</guid><dc:creator><![CDATA[junix]]></dc:creator><pubDate>Sat, 19 Mar 2005 19:19:20 GMT</pubDate></item></channel></rss>