<?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[ChangeDisplaySettings und WM_MOUSEMOVE]]></title><description><![CDATA[<p>Ich habe ein Programm gebastelt, das einfach nur nen GL-Fenster auf macht, in dem ich anhand der Mousebewegung nen Würfel drehe.<br />
Das Ganze funktioniert auch einwandfrei - so lange ich nicht im Vollbildmodus arbeite. Da wird dann scheinbar beim Einstellen des Bildschirms WM_MOUSEMOVE aufgerufen und dabei kommt es zu ner Schutzverletzung. Warum kann ich leider so nicht sagen.<br />
Das Ganze Funktioniert jedoch, wenn ich den MOUSEMOVE-Event raus nehme.</p>
<p>Gibt es ne Möglichkeit, den MOUSEMOVE abzuschalten während ich die Bildschirmauflösung ändere??</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/69113/changedisplaysettings-und-wm_mousemove</link><generator>RSS for Node</generator><lastBuildDate>Wed, 08 Apr 2026 20:31:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/69113.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 24 Mar 2004 13:46:00 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Wed, 24 Mar 2004 13:46:00 GMT]]></title><description><![CDATA[<p>Ich habe ein Programm gebastelt, das einfach nur nen GL-Fenster auf macht, in dem ich anhand der Mousebewegung nen Würfel drehe.<br />
Das Ganze funktioniert auch einwandfrei - so lange ich nicht im Vollbildmodus arbeite. Da wird dann scheinbar beim Einstellen des Bildschirms WM_MOUSEMOVE aufgerufen und dabei kommt es zu ner Schutzverletzung. Warum kann ich leider so nicht sagen.<br />
Das Ganze Funktioniert jedoch, wenn ich den MOUSEMOVE-Event raus nehme.</p>
<p>Gibt es ne Möglichkeit, den MOUSEMOVE abzuschalten während ich die Bildschirmauflösung ändere??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/487697</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/487697</guid><dc:creator><![CDATA[DocJunioR]]></dc:creator><pubDate>Wed, 24 Mar 2004 13:46:00 GMT</pubDate></item><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Wed, 24 Mar 2004 14:05:59 GMT]]></title><description><![CDATA[<p>Deine Beschreibung hört sich zwar etwas seltsam an, aber wenn es wirklich daran liegen sollte kannst du doch einfach vor dem Umstellen ein Flag setzen, den du dann anschließend wieder zurücksetzt. In WM_MOUSEMOVE fragst du dann einfach dieses Flag ab <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/487742</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/487742</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Wed, 24 Mar 2004 14:05:59 GMT</pubDate></item><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Wed, 24 Mar 2004 14:39:15 GMT]]></title><description><![CDATA[<p>zeig doch mal dein mousemove code.</p>
<p>ich mach es einfach so</p>
<pre><code class="language-cpp">// ptCursor und ptCursorSave sind static
        case WM_MOUSEMOVE:
                // strg gedrückt
                if(wParam &amp; MK_CONTROL)
                {
					ptCursorSave	= ptCursor;
					ptCursor.x		= LOWORD(lParam);
					ptCursor.y		= HIWORD(lParam);

					// differenz zwischen vorheriger und aktueller cursor pos berechnen
					long lDiffY = ptCursor.y - ptCursorSave.y;
					long lDiffX = ptCursor.x - ptCursorSave.x;

// mit den beiden diff's rechne ich dann
// bsp:
// g_fRotX += (float)lDiffX;
// g_fRotY += (float)lDiffY;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/487795</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/487795</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Wed, 24 Mar 2004 14:39:15 GMT</pubDate></item><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Wed, 24 Mar 2004 16:37:20 GMT]]></title><description><![CDATA[<p>also bei mir sieht das so aus</p>
<pre><code>case WM_MOUSEMOVE:
        if (wParam &amp; MK_CONTROL)
        {
           glWin-&gt;Rotation.X += (double) (glWin-&gt;MouseX - LOWORD(lParam)) / 30000000.0;
           glWin-&gt;Rotation.Z += (double) (glWin-&gt;MouseY - HIWORD(lParam)) / 30000000.0;
        }
        else if (wParam &amp; MK_SHIFT)
        {
           glWin-&gt;Translation.X += (double) (glWin-&gt;MouseX - LOWORD(lParam)) / 3000.0;
           glWin-&gt;Translation.Z += (double) (glWin-&gt;MouseY - HIWORD(lParam)) / 3000.0;
        }
        glWin-&gt;MouseX = LOWORD(lParam);
        glWin-&gt;MouseY = HIWORD(lParam);

        return 0;
</code></pre>
<p>und warum schmiert er mir da ab?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/487933</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/487933</guid><dc:creator><![CDATA[DocJunioR]]></dc:creator><pubDate>Wed, 24 Mar 2004 16:37:20 GMT</pubDate></item><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Wed, 24 Mar 2004 17:34:42 GMT]]></title><description><![CDATA[<p>DocJunioR schrieb:</p>
<blockquote>
<p>und warum schmiert er mir da ab?</p>
</blockquote>
<p>Stell doch diese Frage mal jemanden, der sich mit sowas auskennt: Deinen Debugger!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/488009</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/488009</guid><dc:creator><![CDATA[Hepi]]></dc:creator><pubDate>Wed, 24 Mar 2004 17:34:42 GMT</pubDate></item><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Wed, 24 Mar 2004 19:05:56 GMT]]></title><description><![CDATA[<p>ich vermute mal das du ChangeDisplaySettings(..) ausführst bevor du das objekt glWin erstellt hast. da liegt dann der fehler. deswegen würde ich in globale variablen machen (wie in meinem bsp: g_fRotX) und diese dann in der renderloop übergeben</p>
<pre><code class="language-cpp">// mainloop
glWin-&gt;Render(g_fRotX); // usw

// render
GlWin::Render(float fRotX)
{
  glRotatef(fRotX, 0.0f, 0.0f, 1.0f);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/488068</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/488068</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Wed, 24 Mar 2004 19:05:56 GMT</pubDate></item><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Wed, 24 Mar 2004 19:14:31 GMT]]></title><description><![CDATA[<p>hmm.. eigentlich schalte ich im Konstruktor von glWin um...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/488073</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/488073</guid><dc:creator><![CDATA[DocJunioR]]></dc:creator><pubDate>Wed, 24 Mar 2004 19:14:31 GMT</pubDate></item><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Wed, 24 Mar 2004 19:20:20 GMT]]></title><description><![CDATA[<p>DocJunioR schrieb:</p>
<blockquote>
<p>hmm.. eigentlich schalte ich im Konstruktor von glWin um...</p>
</blockquote>
<p>schlecht somit hast du meine vermutung zu nichte gemacht <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/488080</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/488080</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Wed, 24 Mar 2004 19:20:20 GMT</pubDate></item><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Wed, 24 Mar 2004 19:46:26 GMT]]></title><description><![CDATA[<p>Bei was genau stürzt er denn jetzt ab bzw. wo bekommst du den Fehler?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/488101</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/488101</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Wed, 24 Mar 2004 19:46:26 GMT</pubDate></item><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Thu, 25 Mar 2004 10:52:54 GMT]]></title><description><![CDATA[<p>Soo, ich hab das gestern nochmal durchgetestet.</p>
<p>Vorweg : Der Ganze Mist läuft jetzt - und ich weiß nicht warum</p>
<p>Ich hatte mir nen simplen Parser für meine Einstellungen gebastelt. Gebe also in meinem glWin-Konstruktor den Dateinamen für die Config-Datei mit und den Rest macht ne Funktion. Die Daten wurden geladen und das Fenster geändert. Dabei bekam ich aber jedes Mal die Fehlermeldung, dass die ChangeDisplaySttings nicht korrekt durchgeführt wurden - obwohl ich was anderes gesehen hab.<br />
Da ich aber gerne alles abfange, hab ich - gesetzt den Fall, die Datei ist nicht da - auch Defaultdaten einprogrammiert. Diese sind die gleichen, wie in der Datei. Wenn ich also einfach meine Datei umgenannt habe, sprangen die Default-Werte an und alles ging glatt, auch im Vollbildmodus (wohl gemerkt, es waren die Gleichen, die ich aus der Datei gelesen hatte)</p>
<p>Anschließend nannte ich meine Datei wieder um und es lief immernoch. Zwischendurch wurde der ist zwar gelegentlich neu gebaut, aber ich hab im Programm selber nichts geändert...</p>
<p>Kann es sein, dass der DevCpp beim Erstellen des Projekts einfach gelegentlich Dateien nicht mit kompiliert und dadurch fehlerhafte objekte linkt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/488395</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/488395</guid><dc:creator><![CDATA[DocJunioR]]></dc:creator><pubDate>Thu, 25 Mar 2004 10:52:54 GMT</pubDate></item><item><title><![CDATA[Reply to ChangeDisplaySettings und WM_MOUSEMOVE on Thu, 25 Mar 2004 11:11:27 GMT]]></title><description><![CDATA[<p>DocJunioR schrieb:</p>
<blockquote>
<p>Kann es sein, dass der DevCpp beim Erstellen des Projekts einfach gelegentlich Dateien nicht mit kompiliert und dadurch fehlerhafte objekte linkt?</p>
</blockquote>
<p>kannst du bei den projekt optionen einstellen (datei).<br />
allerdings wenn ich etwas in den headern ändere kompiliert er auch es manchmal nicht mit. deswegen füge ich immer eine leerzeile in der cpp ein und lösche diese dann wieder (falls das projekt sehr gross ist) ansonsten strg+f11 geht immer</p>
]]></description><link>https://www.c-plusplus.net/forum/post/488415</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/488415</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Thu, 25 Mar 2004 11:11:27 GMT</pubDate></item></channel></rss>