<?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[VCL TMessages als Broadcast versenden]]></title><description><![CDATA[<p>Hallo,</p>
<p>folgender Code sollte nach dem Entwicklerhandbuch an alle Controls der Anwendung eine Message versenden:</p>
<pre><code class="language-cpp">#define MEINE_BOTSCHAFT (WM_APP + 400)

  TMessage msg;
  msg.Msg= MEINE_BOTSCHAFT;
  msg.WParam= 0;
  msg.LParam= (int) (this);
  msg.Result= 0;

  //Abfeuern
  this-&gt;Broadcast((void*) (&amp;msg) );
</code></pre>
<p>Dieses funktioniert nur bedingt, da die Anwendung aus verschachtelten TFrames besteht.<br />
Die Nachricht kommt nur an der obersten Verschachtelungsebene der Frames an.</p>
<p>Was mache ich falsch?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/149551/vcl-tmessages-als-broadcast-versenden</link><generator>RSS for Node</generator><lastBuildDate>Sat, 08 Aug 2026 05:25:48 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/149551.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 07 Jun 2006 07:55:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to VCL TMessages als Broadcast versenden on Wed, 07 Jun 2006 07:55:33 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>folgender Code sollte nach dem Entwicklerhandbuch an alle Controls der Anwendung eine Message versenden:</p>
<pre><code class="language-cpp">#define MEINE_BOTSCHAFT (WM_APP + 400)

  TMessage msg;
  msg.Msg= MEINE_BOTSCHAFT;
  msg.WParam= 0;
  msg.LParam= (int) (this);
  msg.Result= 0;

  //Abfeuern
  this-&gt;Broadcast((void*) (&amp;msg) );
</code></pre>
<p>Dieses funktioniert nur bedingt, da die Anwendung aus verschachtelten TFrames besteht.<br />
Die Nachricht kommt nur an der obersten Verschachtelungsebene der Frames an.</p>
<p>Was mache ich falsch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1072956</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1072956</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Wed, 07 Jun 2006 07:55:33 GMT</pubDate></item><item><title><![CDATA[Reply to VCL TMessages als Broadcast versenden on Wed, 07 Jun 2006 13:16:26 GMT]]></title><description><![CDATA[<p>wie ich diese sch**** ver****te suchfunktion hasse! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /> wann wird hier endlich mal was neues installiert oder der alte kram repariert?! nicht mal mit google findet man was! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    /></p>
<p>schau mal hier, vlei hilft dir das weiter: <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
<p><a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-42982-and-postdays-is-0-and-postorder-is-asc-and-start-is-10.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-42982-and-postdays-is-0-and-postorder-is-asc-and-start-is-10.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1073168</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1073168</guid><dc:creator><![CDATA[Sunday]]></dc:creator><pubDate>Wed, 07 Jun 2006 13:16:26 GMT</pubDate></item><item><title><![CDATA[Reply to VCL TMessages als Broadcast versenden on Thu, 08 Jun 2006 08:11:51 GMT]]></title><description><![CDATA[<p>Vielen Dank für die Antwort.</p>
<p>Das gleiche Problem hatte ich damals unter CLX auch.<br />
Beim Suchen bin ich nicht mal auf meine eigene Loesung gestossen.<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-138213-and-highlight-is-.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-138213-and-highlight-is-.html</a></p>
<p>Die Implementierung fuer CLX sieht in etwa so aus:</p>
<pre><code class="language-cpp">void ControllerViMo::broadcast(TWinControl* p_twinc)
{
 //Dieses Fenster beschiessen
 //(synchroner Windows-API-Aufruf)
 SendMessage(p_twinc-&gt;Handle, Event_aenderung_ID, 0, 0);

 //seine Kinder beschiessen
 for(int i= 0; i &lt; p_twinc-&gt;ComponentCount; ++i)
   {
   //absteigen
   if (TWinControl* twc= dynamic_cast&lt;TWinControl*&gt;(p_twinc-&gt;Components[i]))
      {
      //Absteigen
      broadcast(twc);
      }//war es ein TWinControl?
   }//ueber alle Kinder
}//broadcast
</code></pre>
<p>Das System hat jedoch noch zwei Probleme:</p>
<p>1. Evtl. werden nur die Sub-Controls des Hauptframes beschossen. Andere Forms bleiben unberuecksichtigt.</p>
<p>2. Waehrend des Nachrichtenversendes aendert sich die Anzahl der Fensterelemente, d.h. die Schleife koennte ins Leere greifen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1073639</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1073639</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Thu, 08 Jun 2006 08:11:51 GMT</pubDate></item></channel></rss>