<?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[Eine Frage, auf die es scheinbar keine Antwort gibt...]]></title><description><![CDATA[<p>Hallo,</p>
<p>Habe mich mittlerweile durch zahllose Foren gelesen und neben mir liegen 8 c++ Bücher, die auch alle keine Lösung wissen.<br />
Habe auch in mehrere Foren gepostet, keine Antwort, oder nicht verständliche Antwort für den C++ Einsteiger.<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Hier also nochmal die Frage:</p>
<p>1. Situation:<br />
Habe ein Dialogfenster, das eine Verbindung mit dem Server herstellen soll. Das Fenster hat eine Fortschrittsanzeige, eine Statusanzeige und eine Cancel Button. Das funktoniert sogar alles.<br />
Das ganze Ding besteht aus 3 Funktionen: Connect_to_Server, DoDataExchange und OnCancel.</p>
<p>2. Frage:<br />
Der Code, der ausgeführt werden soll, muss ja irgendwo hin...<br />
Schreibe ich ihn bei OnCancel rein, funktioniert es soweit ich das beurteilen kann, nur der Button muss halt erst gedrückt werden.<br />
Natürlich könnte ich eine Start-Button machen, aber...<br />
Schreibe ich den Code bei Connect_to_Server rein, meldet sich mein 2. Thread zwar am Server an, aber der Dialog wurde da noch gar nicht gezeichnet.<br />
Eigentlich kenne ich es aus anderen Sprachen, macht man eine Funktion auf Verbinde(int a, int b, char c){...} und ruft sie dann auf - dachte ich zumindest.<br />
Dabei treten jedoch 2 Probleme auf:<br />
1. Schreibe ich eine Funktion (oder Methode oder wie auch immer) an eine freie Zeile im Quelltext, kriege ich einen Fehler mit dem ich gar nix anfangen kann: Irgendetwas fehlt in irgendeiner Header Datei!?!?<br />
2. Wenn die Funktion funktionieren würde, wüsste ich trotzdem nicht, wann und wo ich sie Aufrufen würde. In Java gibt es da z. B. eine Main Methode, die am Anfang an läuft. Nur bei C++ hab ich als Einsteiger leider gar keine Plan, wann, was läuft.</p>
<p>Ich bin mitlerweile für jeden Tipp dankbar.</p>
<p>Ach ja: Verwende MS Visual C++ 6.0 MFC</p>
<p>mfg<br />
trequ</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/46302/eine-frage-auf-die-es-scheinbar-keine-antwort-gibt</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Apr 2026 18:29:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/46302.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 18 Aug 2003 15:38:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 15:38:53 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Habe mich mittlerweile durch zahllose Foren gelesen und neben mir liegen 8 c++ Bücher, die auch alle keine Lösung wissen.<br />
Habe auch in mehrere Foren gepostet, keine Antwort, oder nicht verständliche Antwort für den C++ Einsteiger.<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Hier also nochmal die Frage:</p>
<p>1. Situation:<br />
Habe ein Dialogfenster, das eine Verbindung mit dem Server herstellen soll. Das Fenster hat eine Fortschrittsanzeige, eine Statusanzeige und eine Cancel Button. Das funktoniert sogar alles.<br />
Das ganze Ding besteht aus 3 Funktionen: Connect_to_Server, DoDataExchange und OnCancel.</p>
<p>2. Frage:<br />
Der Code, der ausgeführt werden soll, muss ja irgendwo hin...<br />
Schreibe ich ihn bei OnCancel rein, funktioniert es soweit ich das beurteilen kann, nur der Button muss halt erst gedrückt werden.<br />
Natürlich könnte ich eine Start-Button machen, aber...<br />
Schreibe ich den Code bei Connect_to_Server rein, meldet sich mein 2. Thread zwar am Server an, aber der Dialog wurde da noch gar nicht gezeichnet.<br />
Eigentlich kenne ich es aus anderen Sprachen, macht man eine Funktion auf Verbinde(int a, int b, char c){...} und ruft sie dann auf - dachte ich zumindest.<br />
Dabei treten jedoch 2 Probleme auf:<br />
1. Schreibe ich eine Funktion (oder Methode oder wie auch immer) an eine freie Zeile im Quelltext, kriege ich einen Fehler mit dem ich gar nix anfangen kann: Irgendetwas fehlt in irgendeiner Header Datei!?!?<br />
2. Wenn die Funktion funktionieren würde, wüsste ich trotzdem nicht, wann und wo ich sie Aufrufen würde. In Java gibt es da z. B. eine Main Methode, die am Anfang an läuft. Nur bei C++ hab ich als Einsteiger leider gar keine Plan, wann, was läuft.</p>
<p>Ich bin mitlerweile für jeden Tipp dankbar.</p>
<p>Ach ja: Verwende MS Visual C++ 6.0 MFC</p>
<p>mfg<br />
trequ</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335191</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335191</guid><dc:creator><![CDATA[trequ]]></dc:creator><pubDate>Mon, 18 Aug 2003 15:38:53 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 15:50:17 GMT]]></title><description><![CDATA[<p>Was stört dich an einem Start-Button ?<br />
-&gt;Button zeichnen-&gt;Doppelklick drauf -&gt; Code reinschreiben</p>
<p>oder in die OnInitDialog(), das müsste eigentlich auch gehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335200</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335200</guid><dc:creator><![CDATA[CrazyOwl]]></dc:creator><pubDate>Mon, 18 Aug 2003 15:50:17 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 16:20:04 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>was mich an dem Start-Button stört? Es ist für den Benutzer etwas umständlich:<br />
Programm Starten -&gt; auf Verbinden drücken -&gt; Fenster geht auf -&gt; auf start drücken -&gt; Verbindungsaufbau -&gt; Benutzername und Passwort eingeben -&gt; auf Start drücken -&gt; Passwort prüfen -&gt; OK / Fehler <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="👎"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /></p>
<p>Etwas umständlich oder? Wollte eigentlich, wenn man auf Verbinden drückt, das eben ein Fenster kommt, wo man dann den Status sieht.</p>
<p>Wie ich einen code bei OnButtonClicked() schreibe ist mir übrigens schon klar.<br />
Nur: Ich habe keinen OnInitDialog(), da ich in einem Dialog arbeite, der vom Hauptprogramm aufgerufen wird. Der hat nur die Funktionen/Methoden Connect_to_Server(), DoDataExchange(), und OnCancel() (Der Abbrechen button eben...). Wie oder Wo also OnInitDialog? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <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>mfg<br />
trequ</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335232</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335232</guid><dc:creator><![CDATA[trequ]]></dc:creator><pubDate>Mon, 18 Aug 2003 16:20:04 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 16:25:13 GMT]]></title><description><![CDATA[<p>Aso so schaut dein Prog also aus.<br />
Du kannst dir nun entweder die OnInitDialog holen, oder wenn du das nicht willst, weiß ich auch nichts.</p>
<p>Wie das genau unter VC++ 6 ging weiß ich nicht mehr.<br />
Ich denk über den Klassenassi war's.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335238</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335238</guid><dc:creator><![CDATA[CrazyOwl]]></dc:creator><pubDate>Mon, 18 Aug 2003 16:25:13 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 16:39:39 GMT]]></title><description><![CDATA[<p>Du startest einfach in OnInitDialog deinen Thread.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335254</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335254</guid><dc:creator><![CDATA[Oliver]]></dc:creator><pubDate>Mon, 18 Aug 2003 16:39:39 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 16:48:50 GMT]]></title><description><![CDATA[<p>Programm Starten -&gt; auf Verbinden drücken <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> Fenster geht auf (nicht sichtbar, weil noch in InInitdialog()) -&gt; Dialogfenster anzeigen (nicht modal) zum ausgeben der Statusanzeige -&gt; Verbindungsaufbau(und Statusausgabe) -&gt; Statusausgabe schließen -&gt; Fenster geht fertig auf (soll heißen wird jetzt gezeichnet) <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> Benutzername und Passwort eingeben -&gt; auf Start drücken -&gt; Passwort prüfen -&gt; OK / Fehler</p>
<p>Wie wär es damit? bye, Sigi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335267</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335267</guid><dc:creator><![CDATA[BigSigi]]></dc:creator><pubDate>Mon, 18 Aug 2003 16:48:50 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 16:52:18 GMT]]></title><description><![CDATA[<p>also ich würde erst mal mfc-grundlagen lernen....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335276</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335276</guid><dc:creator><![CDATA[lulu]]></dc:creator><pubDate>Mon, 18 Aug 2003 16:52:18 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 20:18:05 GMT]]></title><description><![CDATA[<p>Geht hier: <a href="http://www.henkessoft.de/mfc_einsteigerbuch_kapitel1.htm" rel="nofollow">http://www.henkessoft.de/mfc_einsteigerbuch_kapitel1.htm</a> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/335447</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335447</guid><dc:creator><![CDATA[Erhard Henkes]]></dc:creator><pubDate>Mon, 18 Aug 2003 20:18:05 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 20:53:19 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>erst mal danke für die Antworten.</p>
<p>Hatte zwar noch keine Gelegenheit, aber ich werde dieses Tutorial auf jeden Fall lesen. (Scheint ja Idiotensicher zu sein - cool <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>
<p>Habe jedoch in einem anderem Forum bemerkt, dass die Frage etwas unglücklich gestellt ist und mein Prob irgendwie missverstanden wird. Daher noch einmal:</p>
<p>Das Problem ist NICHT, dass das Programm keine Rechenzeit mehr hat, sobald der Prozess läuft.<br />
Das Programm ist ein C++ Client für ein Perl-Chat-Programm. Der Perl Client wurde in eine .exe kompiliert, die nicht sichtbar ist.<br />
Das Programm soll nun eigentlich nur die Grafische Oberfläche bieten, da Perl mit TK etwas... sch*** ist.<br />
Hierfür arbeite ich mit WinExec(Perl_cli.exe - Parameter). Dieser Thread schreibt nun etwas in eine Datei und so weiter.<br />
Ich habe KEINE Probs mit dem Fortschrittsbalken oder dem Thread.<br />
Wie gesagt: Wenn ich einen Button reinschreibe &quot;FANG JETZT AN&quot; dann geht es ja.<br />
Mein Problem liegt da:<br />
Habe einen Hautpdialog. Dieser hat eine Button &quot;am Server anmelden&quot;.<br />
Nach dem Klick geht auch ein Fenster mit Fortschrittsanzeige auf, wunderbar. NUR: Wo schreibe ich den Code hin, der Ausgefürt werden soll, wenn der Dialog fertig dargestellt ist? Ich habe im 2. Dialog kein OnInitDialog oder so, nur im Hauptfenster. Im 2. Dialog hab ich nur Connect_to_Server(), DoDataExchange() und OnCancel().<br />
Wie gesagt: Mache ich im 2. Dialog einen Button hin, &quot;FANG JETZT AN&quot; geht es ja...<br />
nur denke ich mir, das das sch*** ist. Er soll halt einfach nach dem man auf Die Schaltfläche &quot;am Server anmelden&quot; gedrückt hat, das Statusfenster bringen, und dann die Datei perl_client.exe starten, und dann am Server anmelden. OHNE dass der Benutzer noch 10 Buttons drücken muss, damit es weiter geht.</p>
<p>Ich kenne es eben aus Java: Es geht los bei main()... wunderbar. Erst das, dann das,...</p>
<p>// OK, das dürfte sich mit dem Tutorial Klären lassen:</p>
<p>NUR bei C++ ?!? Wo geht wann was los? Ich hab keine Ahnung von den ganzen Dateien und wie und was? Kann es sein, dass C++ einfach alles gleichzeitig macht, ohne klaren Struckturen zu folgen? Ich kann jedenfalls keine erkennen..</p>
<p>mfg<br />
trequ</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335478</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335478</guid><dc:creator><![CDATA[trequ]]></dc:creator><pubDate>Mon, 18 Aug 2003 20:53:19 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 21:09:22 GMT]]></title><description><![CDATA[<p>Schreib in jede Methode eine MessaegeBox die dir ausgiebt in welcher Funktion du gerade bist. Oder geh dein Programm mit dem Debuger Schritt für Schritt durch.<br />
So solltest du hinter die Reihenfolge kommen <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>
]]></description><link>https://www.c-plusplus.net/forum/post/335487</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335487</guid><dc:creator><![CDATA[BigSigi]]></dc:creator><pubDate>Mon, 18 Aug 2003 21:09:22 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Mon, 18 Aug 2003 21:22:40 GMT]]></title><description><![CDATA[<p>Du drückst den Button um das ganze zu starten</p>
<p>Du startest einen Dialog.<br />
In der Funktion OnInitialise() (hier wird der Dialog noch nicht angezeigt) startest du einen eigenen Dialog der dir den Status ausgibt. Bsp.:</p>
<pre><code class="language-cpp">CStartDlg sdlg;   //Im StartDlg wird der Ladefortschritt angezeigt
sdlg-&gt;Create(IDD_DIALOG1,NULL);
sdlg-&gt;ShowWindow(SW_SHOW);

//Diese Funktion wird aufgerufen um den Ladefortschritt im StartDlg zu aktualisieren
sdlg-&gt;SetPos(..);//Weitersetzen der Statusanzeige in dem Dialog

sdlg-&gt;DestroyWindow();
</code></pre>
<p>Die Funktion ist zu Ende, der Status-Dialog verschwindet, der eigendliche Dialog wird gezeichnet (nach der Funktion OnInitalise()), Der User Gibt Password und Username ein, drückt auf START(oder weiter), ....-&gt;weiter wie du glaubst.</p>
<p>TSCHAU, SIGI</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335494</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335494</guid><dc:creator><![CDATA[BigSigi]]></dc:creator><pubDate>Mon, 18 Aug 2003 21:22:40 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Tue, 19 Aug 2003 04:44:01 GMT]]></title><description><![CDATA[<p>Fast feder Dialog hat ein OnInitDialog.</p>
<p>Darum nennt man es ja OnInitDialog weil beim &quot;initialisieren des Dlg ausgeführt&quot;</p>
<p>Solltest du diese Funktion nicht in deinem Dlg haben dann musst du sie von Assi erstellen lassen.<br />
Auf die DlgKlasse klicken (rechte Maustaste)<br />
Im Menü &quot;Behandlungsroutine für Windowsnachrichten hinzufügen&quot; und einfach ein doppelklicj auf die Nachricht &quot;WM_INITDIALOG&quot;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335568</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335568</guid><dc:creator><![CDATA[Unix-Tom]]></dc:creator><pubDate>Tue, 19 Aug 2003 04:44:01 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Tue, 19 Aug 2003 07:03:33 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>der Ansatz scheint mir richtig, jedoch passiert folgendes wenn ich eine MessageBox in OnShow(), OnCreate(), OnInitDialog() oder OnDoModal() reinschreibe:<br />
-&gt; man drückt den Button -&gt; es kommt die MessageBox -&gt; Fenster wird dargestellt. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/26a0.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--warning"
      title=":warning:"
      alt="⚠"
    /></p>
<p>Dummerweise genau falsch rum. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <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="😞"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
(Was ich bräuchte: -&gt;Button-&gt;Fenster wird dargestellt-&gt;Nachricht/Oder mein Code eben ausgeführt)</p>
<p>Aber trotzdem Danke <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
<p>mfg<br />
trequ</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335600</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335600</guid><dc:creator><![CDATA[trequ]]></dc:creator><pubDate>Tue, 19 Aug 2003 07:03:33 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Tue, 19 Aug 2003 08:04:02 GMT]]></title><description><![CDATA[<p>Starte in OnInitDialog() einen Timer,und rufe die MessageBox in OnTimer() auf.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335632</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335632</guid><dc:creator><![CDATA[Andorxor]]></dc:creator><pubDate>Tue, 19 Aug 2003 08:04:02 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Tue, 19 Aug 2003 10:08:48 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>erst mal RIESEN DANK - es scheint zu funktionieren.</p>
<p>Habe folgendes eingebunden:</p>
<pre><code>BOOL CConnect_to_Server::OnInitDialog() 
{
	MessageBox(&quot;init&quot;);		
	SetTimer(1, 1000, NULL);

	CDialog::OnInitDialog();

	return TRUE;
}

void CConnect_to_Server::OnTimer(UINT nIDEvent) 
{
	MessageBox(&quot;Nachricht&quot;);
	KillTimer(nIDEvent);
	CDialog::OnTimer(nIDEvent);
}
</code></pre>
<p>Da der Dialog jedoch gleich gezeichnet ist, sollte es doch reichen, nur SetTimer(1, 10, NULL); zu schreiben - also 10ms, oder vieleicht 100.<br />
Wenn ich das jedoch mache, lässt sich der Timer nicht mehr beenden, und ich werden von den MessageBoxen &quot;überflutet&quot;.<br />
Mache ich was falsch, oder ist einfach 1000ms das Minimum?</p>
<p>Danke.</p>
<p>mfg<br />
trequ</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335734</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335734</guid><dc:creator><![CDATA[trequ]]></dc:creator><pubDate>Tue, 19 Aug 2003 10:08:48 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Tue, 19 Aug 2003 10:26:36 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#define IDT_TIMER1 1 //Am besten über Menü-&gt;Ansicht-&gt;Ressourcensymbole 
------------------------------------
SetTimer(IDT_TIMER1, 20, NULL); 
-------------------------------------
void CConnect_to_Server::OnTimer(UINT nIDEvent)  
{ 
   switch(nIDEvent)
   {
      case IDT_TIMER1: MessageBox(&quot;Nachricht&quot;); 
                       KillTimer(nIDEvent); //besser KillTimer(IDT_TIMER1); 
                       break;
      default:         break;
   }

   CDialog::OnTimer(nIDEvent); 
}
</code></pre>
<p>Ich hab mal gelesen das 20ms die kleinste Zeit ist die er verarbeiten kann.<br />
Du kannst aber auch 0 oder 1 schreiben, das macht der Funktion nichts.</p>
<p>Diese Funktion hat nur einen Hacken, Sie wird nur dann ausgeführt wenn der Prozessor nicht zu sehr ausgelastet ist (wird bei dir nicht der Fall sein), ansonsten wird die Ausführung auf später verschoben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335742</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335742</guid><dc:creator><![CDATA[BigSigi]]></dc:creator><pubDate>Tue, 19 Aug 2003 10:26:36 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Tue, 19 Aug 2003 11:33:26 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>funktioniert seltsamer weise nicht. Habe da jetzt noch eine MSG Box reingeschrieben und einen 2. Kill:</p>
<pre><code>BOOL CConnect_to_Server::OnInitDialog() 
{
	MessageBox(&quot;init&quot;);		
	SetTimer(IDT_TIMER1, 5000, NULL);
	MessageBox(&quot;wieder da&quot;);

	CDialog::OnInitDialog();

	return TRUE;
}

void CConnect_to_Server::OnTimer(UINT nIDEvent)   
{  
	MessageBox(&quot;Nachricht&quot;);  
         KillTimer(IDT_TIMER1);
	KillTimer(nIDEvent);

    CDialog::OnTimer(nIDEvent);  
}
</code></pre>
<p>Selbst wenn ich die Zeit auf 5 Sek. stelle, kommt nach 5 Sek. noch eine Dialogbox mit &quot;Nachricht&quot;.</p>
<p>Ich kriege im Moment &quot;init&quot; dann nach Ok &quot;wieder da&quot; und dann alle 5 Sek - auch ohne OK bei &quot;wieder da&quot; das Fenster &quot;Nachricht&quot;</p>
<p>Irgendwie läuft der Timer zwar richtig, aber er beendet sich nicht.</p>
<p>mfg<br />
trequ</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335840</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335840</guid><dc:creator><![CDATA[trequ]]></dc:creator><pubDate>Tue, 19 Aug 2003 11:33:26 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Tue, 19 Aug 2003 15:03:33 GMT]]></title><description><![CDATA[<p>mach den von mir vorher vorgeschlagenen switch-Block, denn vielleicht läft der Timer durch irgend einen anderen Aufruf. Oder mach eine if-Abfrage.</p>
<pre><code class="language-cpp">if(nIDEvent == IDT_TIMER1)
{
   KillTimer(IDT_TIMER1);
}
CDialog::OnTimer(nIDEvent);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/335863</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335863</guid><dc:creator><![CDATA[BigSigi]]></dc:creator><pubDate>Tue, 19 Aug 2003 15:03:33 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Tue, 19 Aug 2003 13:44:18 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Habe das jetzt probiert:</p>
<pre><code class="language-cpp">BOOL CConnect_to_Server::OnInitDialog() 
{
	MessageBox(&quot;init&quot;);		
	SetTimer(IDT_TIMER1, 1000, NULL);

	CDialog::OnInitDialog();

	return TRUE;
}

void CConnect_to_Server::OnTimer(UINT nIDEvent)   
{  
	if(IDT_TIMER1 == nIDEvent)
	{
		MessageBox(&quot;Nachricht&quot;);  
		KillTimer(IDT_TIMER1);
		KillTimer(nIDEvent);
	}
	else
	{
		MessageBox(&quot;andere Nachricht&quot;);
	}
    CDialog::OnTimer(nIDEvent);  
}
</code></pre>
<p>selber Fehler.</p>
<p>Bin jetzt dahinter gekommen:</p>
<p>schreibe ich:</p>
<p>....<br />
MessageBox(...);<br />
KillTimer(...);<br />
...<br />
geht es nicht. <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="😡"
    /></p>
<p>...<br />
KillTimer(...);<br />
MessageBox(...);<br />
...<br />
Dagegen geht aber. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
<p>Ich muss das jetzt nicht verstehen oder?<br />
Der Timer wird irgendwie durch KillTimer nicht beendet, wenn ein Code davor steht, auch wenn es keine MessageBox ist. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
mfg<br />
trequ</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335990</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335990</guid><dc:creator><![CDATA[trequ]]></dc:creator><pubDate>Tue, 19 Aug 2003 13:44:18 GMT</pubDate></item><item><title><![CDATA[Reply to Eine Frage, auf die es scheinbar keine Antwort gibt... on Tue, 19 Aug 2003 13:48:11 GMT]]></title><description><![CDATA[<p>Ich denke das in der Zeit die du benötigst um die MessageBox wegzuklicken sich einige Aufrufe von OnTimer ansammeln.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/335994</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/335994</guid><dc:creator><![CDATA[Andorxor]]></dc:creator><pubDate>Tue, 19 Aug 2003 13:48:11 GMT</pubDate></item></channel></rss>