<?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[herausfinden auf welches TImage geklickt wurde]]></title><description><![CDATA[<p>hallo,</p>
<p>ich habe ein kleines problem. ich habe auf einem spielfeld mehrere TImages platziert. wie kann ich nun abfragen auf welches der vielen doppelgeklickt wurde und wie dessen name ist?</p>
<pre><code class="language-cpp">/*******************************************************************************
* Drehen der Dreiecke
*/
void __fastcall TKomponenten::imgDreieckDoubleClick(TObject *Sender)
{
        if(m_anzDreiecke &gt;= 1)
        {
                switch(m_anzDrehungenDreieck)
                {
                        case 0:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck01.bmp&quot;);
                                m_anzDrehungenDreieck++;
                                break;
                        case 1:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck02.bmp&quot;);
                                m_anzDrehungenDreieck++;
                                break;
                        case 2:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck04.bmp&quot;);
                                m_anzDrehungenDreieck++;
                                break;
                        case 3:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck03.bmp&quot;);
                                m_anzDrehungenDreieck = 0;
                                break;
                        default:
                                break;
                }
        }
}
</code></pre>
<pre><code class="language-cpp">/*******************************************************************************
*
*/
void __fastcall TKomponenten::imgDreieckMouseUp(TObject *Sender,
                TMouseButton Button, TShiftState Shift, int x, int y)
{
        if(m_anzDreiecke &gt;= 1)
        {
                if(dreiecke[m_momentaneDreiecke]-&gt;Left + 20 &gt; m_left &amp;&amp; y &lt; m_form-&gt;Width - 20)
                {
                        dreiecke[m_momentaneDreiecke]-&gt;Top = m_top + 45;
                        dreiecke[m_momentaneDreiecke]-&gt;Left = m_poslblAnzDreiecke;
                }
                else
                {
                        m_momentaneDreiecke++;
                        m_anzDreiecke--;

                        if(m_anzDreiecke &gt;= 0 &amp;&amp; m_noMoreDreieckeLeft == false)
                        {
                                //Neues Dreieck malen
                                dreiecke[m_momentaneDreiecke] = new TImage(m_form);
                                dreiecke[m_momentaneDreiecke]-&gt;Parent = m_form;
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;LoadFromFile(&quot;Dreieck01.bmp&quot;);
                                dreiecke[m_momentaneDreiecke]-&gt;Top = m_top + 45;

                                switch(m_anzDreieckeDez)
                                {
                                        case 1:
                                                m_poslblAnzDreiecke = lblAnzDreiecke-&gt;Left + 20;
                                                break;
                                        case 2:
                                                m_poslblAnzDreiecke = lblAnzDreiecke-&gt;Left + 25;
                                                break;
                                        default:
                                                break;
                                }

                                dreiecke[m_momentaneDreiecke]-&gt;Left = m_poslblAnzDreiecke;
                                dreiecke[m_momentaneDreiecke]-&gt;AutoSize = true;
                                dreiecke[m_momentaneDreiecke]-&gt;Transparent = true;
                                dreiecke[m_momentaneDreiecke]-&gt;OnMouseDown = imgDreieckMouseDown;
                                dreiecke[m_momentaneDreiecke]-&gt;OnMouseMove = imgDreieckMouseMove;
                                dreiecke[m_momentaneDreiecke]-&gt;OnMouseUp = imgDreieckMouseUp;
                                dreiecke[m_momentaneDreiecke]-&gt;OnDblClick = imgDreieckDoubleClick;
                                dreiecke[m_momentaneDreiecke]-&gt;AutoSize = true;

                                lblAnzDreiecke-&gt;Caption = (AnsiString)m_anzDreiecke;

                                m_gesPunktezahl = m_gesPunktezahl - m_kostenDreieck;
                                lblPunktestand-&gt;Caption = &quot;Punkte: &quot; + (AnsiString)m_gesPunktezahl;
                        }
                }

                m_Dyn = 0;
        }
        else
        {
                m_noMoreDreieckeLeft = true;
        }
}
</code></pre>
<p>im moment wird immer eins hochgezählt bei mouseup. d.H: wenn ich ein dreieck auf dem feld platziere wird automatisch ein neues TImage erzeugt welches dann praktisch für m_momentaneDreiecke steht.</p>
<p>ich mag aber das drehen auf welches ich wirklich doppelklicke.</p>
<p>gruesse rene</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/148483/herausfinden-auf-welches-timage-geklickt-wurde</link><generator>RSS for Node</generator><lastBuildDate>Thu, 06 Aug 2026 16:00:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/148483.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 27 May 2006 09:12:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to herausfinden auf welches TImage geklickt wurde on Sat, 27 May 2006 09:14:15 GMT]]></title><description><![CDATA[<p>hallo,</p>
<p>ich habe ein kleines problem. ich habe auf einem spielfeld mehrere TImages platziert. wie kann ich nun abfragen auf welches der vielen doppelgeklickt wurde und wie dessen name ist?</p>
<pre><code class="language-cpp">/*******************************************************************************
* Drehen der Dreiecke
*/
void __fastcall TKomponenten::imgDreieckDoubleClick(TObject *Sender)
{
        if(m_anzDreiecke &gt;= 1)
        {
                switch(m_anzDrehungenDreieck)
                {
                        case 0:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck01.bmp&quot;);
                                m_anzDrehungenDreieck++;
                                break;
                        case 1:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck02.bmp&quot;);
                                m_anzDrehungenDreieck++;
                                break;
                        case 2:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck04.bmp&quot;);
                                m_anzDrehungenDreieck++;
                                break;
                        case 3:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck03.bmp&quot;);
                                m_anzDrehungenDreieck = 0;
                                break;
                        default:
                                break;
                }
        }
}
</code></pre>
<pre><code class="language-cpp">/*******************************************************************************
*
*/
void __fastcall TKomponenten::imgDreieckMouseUp(TObject *Sender,
                TMouseButton Button, TShiftState Shift, int x, int y)
{
        if(m_anzDreiecke &gt;= 1)
        {
                if(dreiecke[m_momentaneDreiecke]-&gt;Left + 20 &gt; m_left &amp;&amp; y &lt; m_form-&gt;Width - 20)
                {
                        dreiecke[m_momentaneDreiecke]-&gt;Top = m_top + 45;
                        dreiecke[m_momentaneDreiecke]-&gt;Left = m_poslblAnzDreiecke;
                }
                else
                {
                        m_momentaneDreiecke++;
                        m_anzDreiecke--;

                        if(m_anzDreiecke &gt;= 0 &amp;&amp; m_noMoreDreieckeLeft == false)
                        {
                                //Neues Dreieck malen
                                dreiecke[m_momentaneDreiecke] = new TImage(m_form);
                                dreiecke[m_momentaneDreiecke]-&gt;Parent = m_form;
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;LoadFromFile(&quot;Dreieck01.bmp&quot;);
                                dreiecke[m_momentaneDreiecke]-&gt;Top = m_top + 45;

                                switch(m_anzDreieckeDez)
                                {
                                        case 1:
                                                m_poslblAnzDreiecke = lblAnzDreiecke-&gt;Left + 20;
                                                break;
                                        case 2:
                                                m_poslblAnzDreiecke = lblAnzDreiecke-&gt;Left + 25;
                                                break;
                                        default:
                                                break;
                                }

                                dreiecke[m_momentaneDreiecke]-&gt;Left = m_poslblAnzDreiecke;
                                dreiecke[m_momentaneDreiecke]-&gt;AutoSize = true;
                                dreiecke[m_momentaneDreiecke]-&gt;Transparent = true;
                                dreiecke[m_momentaneDreiecke]-&gt;OnMouseDown = imgDreieckMouseDown;
                                dreiecke[m_momentaneDreiecke]-&gt;OnMouseMove = imgDreieckMouseMove;
                                dreiecke[m_momentaneDreiecke]-&gt;OnMouseUp = imgDreieckMouseUp;
                                dreiecke[m_momentaneDreiecke]-&gt;OnDblClick = imgDreieckDoubleClick;
                                dreiecke[m_momentaneDreiecke]-&gt;AutoSize = true;

                                lblAnzDreiecke-&gt;Caption = (AnsiString)m_anzDreiecke;

                                m_gesPunktezahl = m_gesPunktezahl - m_kostenDreieck;
                                lblPunktestand-&gt;Caption = &quot;Punkte: &quot; + (AnsiString)m_gesPunktezahl;
                        }
                }

                m_Dyn = 0;
        }
        else
        {
                m_noMoreDreieckeLeft = true;
        }
}
</code></pre>
<p>im moment wird immer eins hochgezählt bei mouseup. d.H: wenn ich ein dreieck auf dem feld platziere wird automatisch ein neues TImage erzeugt welches dann praktisch für m_momentaneDreiecke steht.</p>
<p>ich mag aber das drehen auf welches ich wirklich doppelklicke.</p>
<p>gruesse rene</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1065940</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1065940</guid><dc:creator><![CDATA[rene04]]></dc:creator><pubDate>Sat, 27 May 2006 09:14:15 GMT</pubDate></item><item><title><![CDATA[Reply to herausfinden auf welches TImage geklickt wurde on Sat, 27 May 2006 09:38:58 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>schau dir in der BCB-FAQ hier im Forum die Themen im Abschnitt <em>Komnponenten benutzen</em> an.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1065957</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1065957</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 27 May 2006 09:38:58 GMT</pubDate></item><item><title><![CDATA[Reply to herausfinden auf welches TImage geklickt wurde on Sat, 27 May 2006 10:50:42 GMT]]></title><description><![CDATA[<p>hab ich nun, nur leider werde ich daraus net viel schlauer <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>gruesse rene</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1066001</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1066001</guid><dc:creator><![CDATA[rene04]]></dc:creator><pubDate>Sat, 27 May 2006 10:50:42 GMT</pubDate></item><item><title><![CDATA[Reply to herausfinden auf welches TImage geklickt wurde on Sat, 27 May 2006 10:52:59 GMT]]></title><description><![CDATA[<p><a href="http://www.marquardtnet.info/cecke/quickies.1/1_quicky_17.html" rel="nofollow">http://www.marquardtnet.info/cecke/quickies.1/1_quicky_17.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1066003</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1066003</guid><dc:creator><![CDATA[Christian211]]></dc:creator><pubDate>Sat, 27 May 2006 10:52:59 GMT</pubDate></item><item><title><![CDATA[Reply to herausfinden auf welches TImage geklickt wurde on Sat, 27 May 2006 11:14:55 GMT]]></title><description><![CDATA[<p>kleiner versuch:</p>
<pre><code class="language-cpp">TImage *hilfsImage = dynamic_cast&lt;TImage*&gt; (Sender);
        if(hilfsImage)
        {
	        String test=hilfsImage-&gt;Name;
                lblPunktestand-&gt;Caption = test;
        }
</code></pre>
<p>result NULL. hmmm, ..... ahso hab kein name gesetzt <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>
<p>gruesse rene</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1066012</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1066012</guid><dc:creator><![CDATA[rene04]]></dc:creator><pubDate>Sat, 27 May 2006 11:14:55 GMT</pubDate></item><item><title><![CDATA[Reply to herausfinden auf welches TImage geklickt wurde on Sat, 27 May 2006 11:10:24 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>da dein zuletzt geposteter Quellcode für sich genommen korrekt ist, liegt das Problem woanders.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1066015</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1066015</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 27 May 2006 11:10:24 GMT</pubDate></item><item><title><![CDATA[Reply to herausfinden auf welches TImage geklickt wurde on Sat, 27 May 2006 11:36:48 GMT]]></title><description><![CDATA[<p>ich hatte kein name gesetzt. jetzt häng ich aber schon wieder. der name bringt mir ja nix. ich brauch da den index des jeweiligen TImages aus meinem array.</p>
<pre><code class="language-cpp">/*******************************************************************************
* Drehen der Dreiecke
*/
void __fastcall TKomponenten::imgDreieckDoubleClick(TObject *Sender)
{
        TImage *hilfsImage = dynamic_cast&lt;TImage*&gt; (Sender);
        if(hilfsImage)
        {
	        m_nameDreieck = hilfsImage-&gt;Name;
        }

        if(m_anzDreiecke &gt;= 1)
        {
                switch(m_anzDrehungenDreieck)
                {
                        case 0:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck01.bmp&quot;);
                                m_anzDrehungenDreieck++;
                                break;
                        case 1:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck02.bmp&quot;);
                                m_anzDrehungenDreieck++;
                                break;
                        case 2:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck04.bmp&quot;);
                                m_anzDrehungenDreieck++;
                                break;
                        case 3:
                                dreiecke[m_momentaneDreiecke]-&gt;Picture-&gt;Bitmap-&gt;
                                LoadFromFile(&quot;Bilder\\Dreieck03.bmp&quot;);
                                m_anzDrehungenDreieck = 0;
                                break;
                        default:
                                break;
                }
        }
}
</code></pre>
<p>ich brauh den richtigen wert in m_momentaneDreiecke.</p>
<p>gruesse rene</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1066029</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1066029</guid><dc:creator><![CDATA[rene04]]></dc:creator><pubDate>Sat, 27 May 2006 11:36:48 GMT</pubDate></item><item><title><![CDATA[Reply to herausfinden auf welches TImage geklickt wurde on Sat, 27 May 2006 11:46:55 GMT]]></title><description><![CDATA[<p>Da du ja auch den Namen nicht setzt - jedenfalls in dem hier gezeigten Code - kann logischerweise auch keiner da sein.</p>
<p>Setze den Index in das TAG Attribut und lese dann diesen aus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1066036</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1066036</guid><dc:creator><![CDATA[Christian211]]></dc:creator><pubDate>Sat, 27 May 2006 11:46:55 GMT</pubDate></item><item><title><![CDATA[Reply to herausfinden auf welches TImage geklickt wurde on Sat, 27 May 2006 11:50:58 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>schreib den Index des Images beim Erstellen in die Tag-Eigenschaft, dann kannst du diese auch wieder im Event nach dem casten auslesen,</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1066038</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1066038</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 27 May 2006 11:50:58 GMT</pubDate></item><item><title><![CDATA[Reply to herausfinden auf welches TImage geklickt wurde on Sat, 27 May 2006 11:57:10 GMT]]></title><description><![CDATA[<p>tag war die lösung. juhu.</p>
<p>danke</p>
<p>gruesse rene</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1066042</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1066042</guid><dc:creator><![CDATA[rene04]]></dc:creator><pubDate>Sat, 27 May 2006 11:57:10 GMT</pubDate></item></channel></rss>