<?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[Problem mit GetPixel]]></title><description><![CDATA[<p>Hi,<br />
habe mal wieder ein wirklich merkwürdiges Problem. Und zwar habe ich mir eine Funktion geschrieben, die ein Rechteck bestimmt, in dem etwas gezeichnet wurde. Dies mach ich mit GetPixel (alles was nicht weiß ist zählt als bemalt).<br />
GetPixel liefert mir allerdings immer CLR_INVALID, wenn ich Variablen für die x und y Koordinaten angebe, statt direkt Zahlen anzugeben. Geb ich allerdings direkt Zahlen ein, z.B. 100,200 funktioniert alles. am HDC kanns also nicht liegen... Naja, schaut euch mal meine Funktion an, oder postet eine möglichkeit, wie man das Rechteck ermitteln kann, in dem bisher gezeichnet wurde.</p>
<pre><code class="language-cpp">//Parameter sind Varaiablen, die das Client Rect beschreiben

void GetRectangle (int min_x,int min_y ,int max_x,int max_y)

{
	int real_x=0,real_y=0;
	COLORREF color;
	int x,y;

	x = min_x;
	y = max_x;

	while (x&lt;=max_x)
	{
		while  (y&lt;=max_y)
		{
			color = GetPixel (bufferhdc,x,y);
			if (color == CLR_INVALID)
				goto END;
			else if (color!=RGB(255,255,255))
			{
				real_x = x;
				real_y = y;
			}
			y++;
		}
		x++;
		y=0;
	}
	rx = real_x; //globale Variablen für das Ergebnis
	ry = real_y;

END:
	if (color == CLR_INVALID)
		MessageBox (hWnd,&quot;Cannot Read Pixels!&quot;,&quot;&quot;,MB_OK);
}
</code></pre>
<p>Danke im voraus</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/93554/problem-mit-getpixel</link><generator>RSS for Node</generator><lastBuildDate>Sat, 25 Apr 2026 03:57:11 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/93554.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 30 Nov 2004 13:30:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 13:30:07 GMT]]></title><description><![CDATA[<p>Hi,<br />
habe mal wieder ein wirklich merkwürdiges Problem. Und zwar habe ich mir eine Funktion geschrieben, die ein Rechteck bestimmt, in dem etwas gezeichnet wurde. Dies mach ich mit GetPixel (alles was nicht weiß ist zählt als bemalt).<br />
GetPixel liefert mir allerdings immer CLR_INVALID, wenn ich Variablen für die x und y Koordinaten angebe, statt direkt Zahlen anzugeben. Geb ich allerdings direkt Zahlen ein, z.B. 100,200 funktioniert alles. am HDC kanns also nicht liegen... Naja, schaut euch mal meine Funktion an, oder postet eine möglichkeit, wie man das Rechteck ermitteln kann, in dem bisher gezeichnet wurde.</p>
<pre><code class="language-cpp">//Parameter sind Varaiablen, die das Client Rect beschreiben

void GetRectangle (int min_x,int min_y ,int max_x,int max_y)

{
	int real_x=0,real_y=0;
	COLORREF color;
	int x,y;

	x = min_x;
	y = max_x;

	while (x&lt;=max_x)
	{
		while  (y&lt;=max_y)
		{
			color = GetPixel (bufferhdc,x,y);
			if (color == CLR_INVALID)
				goto END;
			else if (color!=RGB(255,255,255))
			{
				real_x = x;
				real_y = y;
			}
			y++;
		}
		x++;
		y=0;
	}
	rx = real_x; //globale Variablen für das Ergebnis
	ry = real_y;

END:
	if (color == CLR_INVALID)
		MessageBox (hWnd,&quot;Cannot Read Pixels!&quot;,&quot;&quot;,MB_OK);
}
</code></pre>
<p>Danke im voraus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/662773</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662773</guid><dc:creator><![CDATA[MasterCounter]]></dc:creator><pubDate>Tue, 30 Nov 2004 13:30:07 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 13:34:02 GMT]]></title><description><![CDATA[<p>sollte y nicht so aussehen <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>
<pre><code class="language-cpp">y = min_y;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/662781</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662781</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Tue, 30 Nov 2004 13:34:02 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 13:52:57 GMT]]></title><description><![CDATA[<p>jaja, tippfehler von mir <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> aber funzt trotzdem nicht</p>
]]></description><link>https://www.c-plusplus.net/forum/post/662799</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662799</guid><dc:creator><![CDATA[MasterCounter]]></dc:creator><pubDate>Tue, 30 Nov 2004 13:52:57 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 14:06:25 GMT]]></title><description><![CDATA[<p>Wo hast du das mit 100,200 eingesetzt? Was willst du als Rückgabe? So wie du es hast kann ja nur ein Pixel zurückgegeben werden <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/662812</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662812</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 30 Nov 2004 14:06:25 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 14:47:47 GMT]]></title><description><![CDATA[<p>bei welchen werten bricht er denn ab? sind deine parameter-werte, die du an die funktion übergibst, auch gültig im hdc?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/662851</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662851</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Tue, 30 Nov 2004 14:47:47 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 15:33:31 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/1644">@flenders</a> für x und y, und die Funktion funktioniert ja, wenn ich ihr statt Variablen Werte übergebe...</p>
<p>ich will ja jedes einzelne Pixel auf seine Farbe überprüfen, damit ich weiß, welche Pixel bemalt sind und welche nicht (für die Größe der Bitmap zum Speichern notwendig, geb ich da nämlich das ClientRect an, macht er mir alles Schwarz,was nicht bemalt wurde! PS: Ist die Funktion SaveBitmap aus der FAQ!)</p>
<p>Gibts da auch ne Windows Funktion die ein Rechteck zurückgibt, welches den bemalten Bereich beschreibt? Wenn nicht muss man das ja so machen, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/662895</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662895</guid><dc:creator><![CDATA[MasterCounter]]></dc:creator><pubDate>Tue, 30 Nov 2004 15:33:31 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 16:09:29 GMT]]></title><description><![CDATA[<p>Irgendwie verstehe ich dein Problem nicht so ganz <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /><br />
Also eigentlich dürfte er nichts schwarz machen, was im Fenster eigentlcih weiß ist. Und bemalt ist ja eigentlich jeder Pixel - nur manche eben weiß <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/662936</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662936</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 30 Nov 2004 16:09:29 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 16:19:06 GMT]]></title><description><![CDATA[<p>...und könntest Du bitte das in den Augen schmerzende GOTO wegmachen?</p>
<pre><code class="language-cpp">//Parameter sind Varaiablen, die das Client Rect beschreiben 

void GetRectangle (int min_x,int min_y ,int max_x,int max_y) 

{ 
    int real_x=0,real_y=0; 
    COLORREF color; 
    int x,y; 

    x = min_x; 
    y = min_y; 

    while (x&lt;=max_x) 
    { 
        while  (y&lt;=max_y) 
        { 
            color = GetPixel (bufferhdc,x,y); 
            if (color == CLR_INVALID)
            {
                MessageBox (hWnd,&quot;Cannot Read Pixels!&quot;,&quot;&quot;,MB_OK); 
                return;
            }
            else if (color!=RGB(255,255,255)) 
            { 
                real_x = x; 
                real_y = y; 
            } 
            y++; 
        } 
        x++; 
        y=0; 
    } 
    rx = real_x; //globale Variablen für das Ergebnis 
    ry = real_y; 
}
</code></pre>
<p>Dann:<br />
Welche Werte haben x und y denn zur Laufzeit? Setz Breakpoints, frag Deinen Debugger (denn der weiß sowas)...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/662943</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662943</guid><dc:creator><![CDATA[Hepi]]></dc:creator><pubDate>Tue, 30 Nov 2004 16:19:06 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 16:17:59 GMT]]></title><description><![CDATA[<p>ich denke er hat ein fenster in das er reinmalt und beim speichern ruft er diese funktion auf um die maximale bitmap grösse zu ermitteln. hoffe ich zumindest das es so ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/662944</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662944</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Tue, 30 Nov 2004 16:17:59 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 16:20:22 GMT]]></title><description><![CDATA[<p>Ist bufferhdc überhaupt gültig?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/662947</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662947</guid><dc:creator><![CDATA[Hepi]]></dc:creator><pubDate>Tue, 30 Nov 2004 16:20:22 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 16:46:23 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/417">@miller_m</a> das ist genau richtig!</p>
<p>Die Werte von x und y sind richtig, denn die Funktion liefert ja nur dann einen Fehler, wenn ich statt 200,100 eben x und y einsetzte, also ist bufferhdc gültig!!! Es scheint so als käme GetPixel nicht mit meinen Variablen klar, obwohl diese die richtigen Werte haben!<br />
Wie speichert man denn sonst Bitmaps, wo nur ein Teil bemalt ist? Da ist ja dann auch nicht der ganze Rest schwarz!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/662966</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662966</guid><dc:creator><![CDATA[MasterCounter]]></dc:creator><pubDate>Tue, 30 Nov 2004 16:46:23 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 17:17:41 GMT]]></title><description><![CDATA[<p>In eine Fenster ist immer alles bemalt!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/662997</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/662997</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 30 Nov 2004 17:17:41 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 17:29:55 GMT]]></title><description><![CDATA[<p>Wie machen die das in Paint? Wo man den Bereich verändern kann, in dem man malen will?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/663013</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663013</guid><dc:creator><![CDATA[MasterCounter]]></dc:creator><pubDate>Tue, 30 Nov 2004 17:29:55 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 17:50:48 GMT]]></title><description><![CDATA[<p>Igendwie werde ich aus deinen Antworten nicht wirklich schlauer <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="😞"
    /><br />
Soll heißen: ich weiß immer noch nicht, wo überhaupt dein Problem liegt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/663034</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663034</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 30 Nov 2004 17:50:48 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 18:01:23 GMT]]></title><description><![CDATA[<p>vorschlag:<br />
mach doch ein zweites client fenster das der grösse eines vorgegebnen zeichenbereich (320*240 zum beispiel) entspricht und lass nur in diesen bereich etwas reinzeichnen. beim speichern frägst du die aktuelle grösse des fenster ab und somit hast du deine bitmap grösse. die grösse des clientfenster könntest du ja mittels dialog oder sizegripper varieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/663051</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663051</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Tue, 30 Nov 2004 18:01:23 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 18:20:39 GMT]]></title><description><![CDATA[<p>was ist sizegripper</p>
]]></description><link>https://www.c-plusplus.net/forum/post/663076</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663076</guid><dc:creator><![CDATA[MasterCounter]]></dc:creator><pubDate>Tue, 30 Nov 2004 18:20:39 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 18:26:38 GMT]]></title><description><![CDATA[<p>das ding unten rechts mit dem so ziemlich jedes fenster grösser machen kann <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/663084</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663084</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Tue, 30 Nov 2004 18:26:38 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 18:27:18 GMT]]></title><description><![CDATA[<p>Ich denke, er mein <a href="http://www.winapi.net/index.php?inhalt=t5" rel="nofollow">sowas hier</a> <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>
<p>edit: zu spät <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>
]]></description><link>https://www.c-plusplus.net/forum/post/663085</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663085</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 30 Nov 2004 18:27:18 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 18:29:38 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/1644">@flenders</a><br />
diesmal waren die sekunden auf meiner seite <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="😃"
    /> <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/663089</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663089</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Tue, 30 Nov 2004 18:29:38 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 18:36:05 GMT]]></title><description><![CDATA[<p>sowas nennt man ausgleichende Gerechtigkeit <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/663096</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663096</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 30 Nov 2004 18:36:05 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 18:53:38 GMT]]></title><description><![CDATA[<p>MasterCounter schrieb:</p>
<blockquote>
<p>sry doppelpost</p>
</blockquote>
<p>und wo ist der erste <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>
]]></description><link>https://www.c-plusplus.net/forum/post/663116</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663116</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Tue, 30 Nov 2004 18:53:38 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 19:41:06 GMT]]></title><description><![CDATA[<p>der der doppelt war hab ich editiert</p>
]]></description><link>https://www.c-plusplus.net/forum/post/663138</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663138</guid><dc:creator><![CDATA[MasterCounter]]></dc:creator><pubDate>Tue, 30 Nov 2004 19:41:06 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit GetPixel on Tue, 30 Nov 2004 22:23:02 GMT]]></title><description><![CDATA[<p>und welcher is der un-editierte ?<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="😕"
    /></p>
<p>Haste mal versucht die x und y Angabe direkt vor GetPixel() mal auszugeben ?<br />
Es gibt nur die Möglichkeit das entweder der DC-Handle nicht stimmt (oder was mit dem DC an sich nicht stimmt) oder x/y außerhalb des zulässigen Bereichs sind...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/663248</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/663248</guid><dc:creator><![CDATA[geeky]]></dc:creator><pubDate>Tue, 30 Nov 2004 22:23:02 GMT</pubDate></item></channel></rss>