Hintergrundfarbe ermitteln
-
Ich habe eine Klasse abgeleitet von CStatic.
Wenn ich dort in OnPaint die Hintergrundfarbe ermittle mitCPaintDC dc(this); dc.SetBkColor(RGB(0, 255, 255)); COLORREF colorBackGround = dc.GetBkColor();
dann erhalte ich immer RGB(255,255,255), also weiß anstatt dem XP üblichen grauen Hintergrund den auch der Dialog hat.
Sollte das so nicht möglich sein, wüßte ich gerne wie ich die Hintergrundfarbe des Dialoges ermittle.
Matthias
-
Geht meines Wissens z.B. so (zumindest solange alles "standardmäßig" ist):
COLORREF cref = GetSysColor(COLOR_BTNFACE);
-
Du musst daa Parent Window fragen.
Dazu gibt es WM_CTLCOLORSTATIC!Du sendest WM_CTLCOLORSTATIC and das Parent und bekommst einen Brush für den Hintergrund und SetBkColor etc sollte auch gesetzt sein.