<?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[View aus Thread heraus aktualisieren]]></title><description><![CDATA[<p>Hallo ...</p>
<p>ich habe in einer Doc-View-Architektur eine weitere Klasse angelegt, in der ein Thread aufgerufen wird.<br />
In dem Thread werden dann Daten aus Files in einem Intervall eingelesen.<br />
Die eingelesenen Daten möchte ich nun in einer Listbox im View darstellen.</p>
<p>Wie kann ich denn dem View mitteilen, dass er sich aktualisieren soll? Kann ich da vielleicht eine Message senden?!?</p>
<p>Mit UpdateData() funktioniert das irgendwie net ... <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>Bem.: Anwendung läuft unter Windows CE.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/143945/view-aus-thread-heraus-aktualisieren</link><generator>RSS for Node</generator><lastBuildDate>Thu, 16 Jul 2026 05:24:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/143945.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 13 Apr 2006 07:18:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to View aus Thread heraus aktualisieren on Thu, 13 Apr 2006 07:18:29 GMT]]></title><description><![CDATA[<p>Hallo ...</p>
<p>ich habe in einer Doc-View-Architektur eine weitere Klasse angelegt, in der ein Thread aufgerufen wird.<br />
In dem Thread werden dann Daten aus Files in einem Intervall eingelesen.<br />
Die eingelesenen Daten möchte ich nun in einer Listbox im View darstellen.</p>
<p>Wie kann ich denn dem View mitteilen, dass er sich aktualisieren soll? Kann ich da vielleicht eine Message senden?!?</p>
<p>Mit UpdateData() funktioniert das irgendwie net ... <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>Bem.: Anwendung läuft unter Windows CE.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1036466</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1036466</guid><dc:creator><![CDATA[MarcusFrankfurt]]></dc:creator><pubDate>Thu, 13 Apr 2006 07:18:29 GMT</pubDate></item><item><title><![CDATA[Reply to View aus Thread heraus aktualisieren on Thu, 13 Apr 2006 07:24:13 GMT]]></title><description><![CDATA[<p>Afaik darf den View nur der Thread direkt bearbeiten, der ihn auch angelegt hat - aus deinem Arbeitsthread könntest du jedoch die Daten an einem bekannten Punkt (z.B. interne Member der View-Klasse) ablegen und anschließend einen Event oder eine Message an den Hauptthread schicken, damit der sich um die Weiterverarbeitung kümmern kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1036474</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1036474</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 13 Apr 2006 07:24:13 GMT</pubDate></item><item><title><![CDATA[Reply to View aus Thread heraus aktualisieren on Thu, 13 Apr 2006 07:31:57 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<p>aus deinem Arbeitsthread könntest du jedoch die Daten an einem bekannten Punkt (z.B. interne Member der View-Klasse) ablegen und anschließend einen Event oder eine Message an den Hauptthread schicken, damit der sich um die Weiterverarbeitung kümmern kann.</p>
</blockquote>
<p>Ja, das könnte ich somachen ... und wie schicke ich den Event/Message?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1036482</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1036482</guid><dc:creator><![CDATA[MarcusFrankfurt]]></dc:creator><pubDate>Thu, 13 Apr 2006 07:31:57 GMT</pubDate></item><item><title><![CDATA[Reply to View aus Thread heraus aktualisieren on Thu, 13 Apr 2006 07:41:52 GMT]]></title><description><![CDATA[<p>Event: Du legst einen CEvent in deiner View-Klasse an - anschließend kann der Thread diesen Event setzen und das Hauptprogramm ihn irgendwo per WaitForSingleObject abfragen (z.B. in der OnIdle() oder während der Nachrichtenbehandlung)</p>
<p>Message: Du brauchst eine eigene Message-ID und eine zugehörige Behandlungsroutine im View - der Thread schickt dann per PostMessage() die Nachricht ans Hauptfenster und dieses kümmert sich beim nächsten Durchlauf durch die Warteschlange darum, die Nachricht zu verarbeiten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1036488</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1036488</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 13 Apr 2006 07:41:52 GMT</pubDate></item><item><title><![CDATA[Reply to View aus Thread heraus aktualisieren on Thu, 13 Apr 2006 07:45:02 GMT]]></title><description><![CDATA[<p>CStoll schrieb:</p>
<blockquote>
<p>Message: Du brauchst eine eigene Message-ID und eine zugehörige Behandlungsroutine im View - der Thread schickt dann per PostMessage() die Nachricht ans Hauptfenster und dieses kümmert sich beim nächsten Durchlauf durch die Warteschlange darum, die Nachricht zu verarbeiten.</p>
</blockquote>
<p>Oki .. danke, das werde ich dann so machen. Hatte die ganze Zeit gedacht, dass ich eine Std.-Message schicken muss.<br />
Aber eigene anlegen und verschicken kann ich zum Glück <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1036489</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1036489</guid><dc:creator><![CDATA[MarcusFrankfurt]]></dc:creator><pubDate>Thu, 13 Apr 2006 07:45:02 GMT</pubDate></item><item><title><![CDATA[Reply to View aus Thread heraus aktualisieren on Fri, 14 Apr 2006 10:57:17 GMT]]></title><description><![CDATA[<p>Mhh... ich habe jetzt doch noch ein Problem.</p>
<p>Wie bekomme ich denn einen Handle auf den View? Auf HWND_BROADCAST reagiert da nix. Ich musste auch mit dem #define in der &quot;Unterklasse&quot; den Msg.Typ nochmal deklarieren, da er ja dort nicht bekannt ist. Stimmt das?<br />
Das ganze ist eine Doc-View-Architektur, falls das einen Unterschied zu einer Dialoganwendung macht.</p>
<p>Was ich bislang gemacht habe: (Vielleicht ist das ja auch schon falsch)</p>
<p>In der View Klasse:</p>
<pre><code class="language-cpp">//hpp-File
#define WM_MYMSG (WM_USER+1)

class View : public CFormView {

public:
   LONG OnMyMsg(WPARAM wParam, LPARAM lParam);
}

// cpp-file:
BEGIN_MESSAGE_MAP(View, CFormView)
	ON_MESSAGE(WM_MYMSG, OnMyMsg)
END_MESSAGE_MAP()

LONG View::OnMyMsg(WPARAM wParam, LPARAM lParam)
{
   // tue was
   return 0;
}
</code></pre>
<p>In der Klasse in der Thread läuft:</p>
<pre><code class="language-cpp">// cpp-File
#define WM_MYMSG (WM_USER+1)

DWORD WINAPI ThreadKlasse::MyThread(LPVOID lpParam) {

    ...
    PostMessage(HWND_BROADCAST, WM_MYMSG, NULL, NULL); 
    ...
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1037367</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1037367</guid><dc:creator><![CDATA[MarcusFrankfurt]]></dc:creator><pubDate>Fri, 14 Apr 2006 10:57:17 GMT</pubDate></item><item><title><![CDATA[Reply to View aus Thread heraus aktualisieren on Tue, 18 Apr 2006 07:24:53 GMT]]></title><description><![CDATA[<p>Du könntest dir die Adresse des View an deine Thread-Funktion übergeben - und es dann am Anfang der Arbeit nach seinem HWnd fragen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1039490</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1039490</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 18 Apr 2006 07:24:53 GMT</pubDate></item></channel></rss>