Changing the background color of a dialog

CodeGuru content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

If you want to change the background color of your dialog box, it is a very simple.

In your CTestDlg header file, declare a member variable from CBrush:


class CTestDlg : public CDialog
{

protected:
CBrush m_brush;

};

Then, add this line in the OnInitDialog function:


BOOL CTestDlg::OnInitDialog()
{

m_brush.CreateSolidBrush(RGB(255, 255, 255)); // color white brush

}

Finally do this on the ID_CTLCOLOR handle:


HBRUSH CAboutDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
/*
** No need to do this!
**
** HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
*/

/*
** Return the white brush.
*/
return m_brush;
}

Hope this could help any fellow programmer!

Date Last Updated: February 8, 1999

More by Author

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Must Read