<?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[edit control selbst zeichnen]]></title><description><![CDATA[<p>Hallo, ich will ein Edit-Control selbst zeichnen, momentan mach ich das so:</p>
<pre><code class="language-cpp">case WM_CTLCOLOREDIT:
        {
        	RECT	rc;
            HGDIOBJ	old_brush	= NULL;
            HGDIOBJ	old_pen		= NULL;

        	GetWindowRect((HWND)lParam, &amp;rc);

        	SetBkMode((HDC)wParam, TRANSPARENT);         // Texthintergrund auf transparent setzen
            SetTextColor((HDC)wParam, RGB(255,255,255)); // Textfarbe auf Weiss setzen

            SelectObject((HDC)wParam, myfont);
            old_brush	= SelectObject((HDC)wParam, CreateSolidBrush(RGB(84, 65, 171)));
            old_pen		= SelectObject((HDC)wParam, p_bt_border);

            Rectangle((HDC)wParam, 0, 0, rc.right - rc.left, rc.bottom - rc.top);

            DeleteObject(SelectObject((HDC)wParam, old_brush));
            SelectObject((HDC)wParam, old_pen);

            return (LRESULT)GetStockObject(NULL_BRUSH);
        }
        break;
</code></pre>
<p>Das funktioniert zwar soweit aber ich hab noch 2 Probleme:</p>
<p>1. Wenn ich den Text im edit-control markiere wird er mit der Standardschrift dargestellt!</p>
<p>2. Wird die markierung wieder aufgehoben kommt es vor dass diese Teile des Textes überhaup nicht mehr dargestellt werden!</p>
<p>Wie kann ich dagegen machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/200445/edit-control-selbst-zeichnen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 28 Apr 2026 15:50:36 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/200445.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 14 Dec 2007 19:14:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to edit control selbst zeichnen on Fri, 14 Dec 2007 19:14:26 GMT]]></title><description><![CDATA[<p>Hallo, ich will ein Edit-Control selbst zeichnen, momentan mach ich das so:</p>
<pre><code class="language-cpp">case WM_CTLCOLOREDIT:
        {
        	RECT	rc;
            HGDIOBJ	old_brush	= NULL;
            HGDIOBJ	old_pen		= NULL;

        	GetWindowRect((HWND)lParam, &amp;rc);

        	SetBkMode((HDC)wParam, TRANSPARENT);         // Texthintergrund auf transparent setzen
            SetTextColor((HDC)wParam, RGB(255,255,255)); // Textfarbe auf Weiss setzen

            SelectObject((HDC)wParam, myfont);
            old_brush	= SelectObject((HDC)wParam, CreateSolidBrush(RGB(84, 65, 171)));
            old_pen		= SelectObject((HDC)wParam, p_bt_border);

            Rectangle((HDC)wParam, 0, 0, rc.right - rc.left, rc.bottom - rc.top);

            DeleteObject(SelectObject((HDC)wParam, old_brush));
            SelectObject((HDC)wParam, old_pen);

            return (LRESULT)GetStockObject(NULL_BRUSH);
        }
        break;
</code></pre>
<p>Das funktioniert zwar soweit aber ich hab noch 2 Probleme:</p>
<p>1. Wenn ich den Text im edit-control markiere wird er mit der Standardschrift dargestellt!</p>
<p>2. Wird die markierung wieder aufgehoben kommt es vor dass diese Teile des Textes überhaup nicht mehr dargestellt werden!</p>
<p>Wie kann ich dagegen machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1420732</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1420732</guid><dc:creator><![CDATA[api_user]]></dc:creator><pubDate>Fri, 14 Dec 2007 19:14:26 GMT</pubDate></item></channel></rss>