CStatic mit bestimmten oder besser durchsichtigen Hintergrund
-
Wie stell ich das am besten an?
Muss ne Klasse von CStatic ableiten die den Hintergrund nicht neu zeichnet oder gibts da vllt ne trick oder style mit dem ich das anstellen könnte?
-
Technisch gesehen ist ein CStatic nicht transparent. Es fragt das Parent nach dem Background und füllt ihn so, wie es das Parent haben will.
Das kanst Du auch selber wenn Du ein Fenster von CWnd ableitest.
Mehrere Faktoren spielen hier eine Rolle:
1. Das Parent sollte nicht den Stil WS_CLIPCHILDREN haben
2. Du überschreibst WM_ERASEBKGND und returnierst TRUE
3. Im WM_PAINT Handler zeichnest Du nur das was notwendig ist.Es gibt natürlich auch WS_EX_TRANSPARENT aber gemäß Windows Doku solten Fenster dieses Stiles nur eine kurze Lebensdauer haben.
-
Hmm sollte wieder mit der alten WM_CTLCOLOR Methode funktionieren ...

-
Das meinte ich mit meinem ersten Satz!