SetBkMode
-
Kenn ich nicht. Mach mal ein Beispiel!!!
-
@Gast: Bitte lies meinen ersten Beitrag nochmal ganz genau durch. Besonders die Abhängigkeiten zwischen CS_OWNDC, GetDC() und ReleaseDC().

btw: Deine Funktion CreateChildWindow() sollte ein HWND zurückgeben, keinen int. Und lass diesen Parameter pOut weg, den brauchst du nicht (dafür gibt es return).
-
p.s.: std::string könnte sich als ungünstige Wahl herausstellen, wenn du dein Programm mit Unicode-Unterstützung kompilieren möchtest.
-
Jetzt habe ich es verstanden. Also muss ich doch subclassing, da ich auf die WNDCLASS kein Zugriff habe (ich nehme da "STATIC").
Danke nochmals,
Gast
-
Nachtrag: Was ist denn jetzt eigentlich wrappen?
-
Superclassing

Steht in der MSDN wie es geht.
Eventuell reicht dir auch SetClassLong/SetClassLongPtr, aber das ändert dann glaube ich die ganzen Static-Fensterklasse im ganzen Prozess.
Wrappen: Wenn man eine Klasse in C++ dafür baut.
-
p.s.: std::string könnte sich als ungünstige Wahl herausstellen, wenn du dein Programm mit Unicode-Unterstützung kompilieren möchtest.
Ja da hat er recht. Schreib lieber ein:
typedef std::basic_string<TCHAR> tstring;unter deine Header und dann benutz tstring anstatt von string. tstring passt sich automatisch an wenn du mit Unicode compilierst.
-
Aha, das wusste ich noch nicht. Eine letzte Frage: Wie kann ich den Innenteil eines Static-Grayframes transparent machen?
Danke,
"Das Gast"
-
Suchst du das: TRANSPARENTE Statics, so geht's!
-
Hab ich schon gesucht (und gefunden), funzt aber trotzdem nicht.
Ich erstelle mein Static, subclasse es und bei der WM_PAINT-Message mach ich InvalidateRect(Parentwindow, NULL, TRUE) und schreibe schön bei WM_CTLCOLORSTATIC (in der Wndproc des Parents) das rein, was in dem schönen Thread von Delta steht, aber Leider funtz es wiegesgt nicht. Das Static wird zwar transparent, aber es zeigt leider nicht das Parentwindow, sondern das, was hinter dem Parentwindow ist, bzw, die Reste von dem, was da war, wenn das Child-Static-Window erstellt wurde, an. Ich kann das nicht besser beschreiben, aber auf jeden fall ist es nur Müll...
Weiß nicht jemand rat?
Danke,
"Das_Gast"