24 m_TextColor = ::GetSysColor (COLOR_WINDOWTEXT);
25 m_BackColor = ::GetSysColor (COLOR_BTNFACE);
27 m_bBtnFaceBkgnd =
false;
29 m_hbrBackBrush = NULL;
36 ATLASSERT(m_hWnd == NULL);
55 CWindowImpl<CStaticPlus, CStatic>::SubclassWindow(hWnd);
57 ModifyStyle(0, SS_NOTIFY);
89 if (m_BackColor != value)
120 return(m_bBtnFaceBkgnd);
125 if (value != m_bBtnFaceBkgnd)
127 m_bBtnFaceBkgnd = value;
150 void CStaticPlus::UpdateBackBrush()
155 if (m_bBtnFaceBkgnd ==
false)
156 m_hbrBackBrush = ::CreateSolidBrush (m_BackColor);
160 void CStaticPlus::DeleteBrush()
162 if (m_hbrBackBrush != NULL)
164 ::DeleteObject (m_hbrBackBrush);
165 m_hbrBackBrush = NULL;
175 HBRUSH CStaticPlus::OnReflectedCtlColorStatic(CDCHandle dc, CStatic wndStatic)
178 if (m_hWnd == wndStatic.m_hWnd)
183 if (m_bBtnFaceBkgnd ==
false)
184 backcolor = m_BackColor;
186 backcolor = ::GetSysColor(COLOR_BTNFACE);
188 dc.SetTextColor(m_TextColor);
189 dc.SetBkColor(backcolor);
190 dc.SetBkMode(TRANSPARENT);
193 if (m_bBtnFaceBkgnd ==
false)
194 return(m_hbrBackBrush);
196 return(::GetSysColorBrush(COLOR_BTNFACE));
200 SetMsgHandled(FALSE);
205 BOOL CStaticPlus::OnEraseBkgnd(CDCHandle dc)
void SetTextColor(COLORREF value)
COLORREF GetTextColor() const
Default: COLOR_WINDOWTEXT.
void SetBtnFaceBkgnd(bool value)
COLORREF GetBackColor() const
Default: COLOR_BTNFACE.
void UpdateContent()
Wraps Invalidate and UpdateWindow, forcing an immediate redraw.
bool GetBtnFaceBkgnd() const
Default: false.
void SetBackColor(COLORREF value)
void UnSubclassStatic()
Un-subclass the window and release GDI resources.
void SubclassStatic(HWND hWnd)
Subclass a Static TExt control window and create GDI resources.