<?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[CLX: Message an jedes Control senden]]></title><description><![CDATA[<p>Hallo,</p>
<p>bisher sende ich mit folgender rekursiven Methode eine Qt-Nachricht an alle Controls (Fensterelemente) meiner Applikation:</p>
<pre><code class="language-cpp">void ControllerViMo::broadcast(TWidgetControl* p_twidgetc, QCustomEventH* p_event)
{//Broadcast via rekursivem Abstieg
if (this-&gt;p_hauptfenster != NULL)
 {
 //Dieses Fenster beschiessen
 QApplication_sendEvent(p_twidgetc-&gt;Handle, p_event);

 //seine Kinder beschiessen
 for (int i= 0; i &lt; p_twidgetc-&gt;ComponentCount; ++i)
  {//ueber alle direkten Komponenten
  if (TWidgetControl* twc= dynamic_cast&lt;TWidgetControl*&gt;(p_twidgetc-&gt;Components[i]))
    {
    //Absteigen
    broadcast(twc, p_event);
    }//war es ein TWidgetControl?
  }//ueber alle Componenten
 }//if p_hauptfesnter valid
}//broadcast
</code></pre>
<p>Das Problem hierbei ist, dass sich währende dem Senden der Nachrichten die Anzahl der Fenster ändern.</p>
<p>- Gibt es vielleicht eine native Methode dazu?</p>
<p>- normalerweise kommen die Nachrichten in einem Puffer und sollten erst nachher empfangen werden, wieso rennt er jetzt schon bei QApplication_sendEvent() in den Event-Handler der Controls?</p>
<p>Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/138213/clx-message-an-jedes-control-senden</link><generator>RSS for Node</generator><lastBuildDate>Sun, 02 Aug 2026 10:24:45 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/138213.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 24 Feb 2006 11:09:44 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to CLX: Message an jedes Control senden on Fri, 24 Feb 2006 11:09:44 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>bisher sende ich mit folgender rekursiven Methode eine Qt-Nachricht an alle Controls (Fensterelemente) meiner Applikation:</p>
<pre><code class="language-cpp">void ControllerViMo::broadcast(TWidgetControl* p_twidgetc, QCustomEventH* p_event)
{//Broadcast via rekursivem Abstieg
if (this-&gt;p_hauptfenster != NULL)
 {
 //Dieses Fenster beschiessen
 QApplication_sendEvent(p_twidgetc-&gt;Handle, p_event);

 //seine Kinder beschiessen
 for (int i= 0; i &lt; p_twidgetc-&gt;ComponentCount; ++i)
  {//ueber alle direkten Komponenten
  if (TWidgetControl* twc= dynamic_cast&lt;TWidgetControl*&gt;(p_twidgetc-&gt;Components[i]))
    {
    //Absteigen
    broadcast(twc, p_event);
    }//war es ein TWidgetControl?
  }//ueber alle Componenten
 }//if p_hauptfesnter valid
}//broadcast
</code></pre>
<p>Das Problem hierbei ist, dass sich währende dem Senden der Nachrichten die Anzahl der Fenster ändern.</p>
<p>- Gibt es vielleicht eine native Methode dazu?</p>
<p>- normalerweise kommen die Nachrichten in einem Puffer und sollten erst nachher empfangen werden, wieso rennt er jetzt schon bei QApplication_sendEvent() in den Event-Handler der Controls?</p>
<p>Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1001802</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1001802</guid><dc:creator><![CDATA[markus.r]]></dc:creator><pubDate>Fri, 24 Feb 2006 11:09:44 GMT</pubDate></item></channel></rss>