Knowledge Base Nr: 00176 colordialog.cpp - http://www.swe-kaiser.de

Downloads:

MFC: Hintergrundfarbe und Textfarbe für Dialoge einer Applikation umschalten

  

//statisch umschalten

BOOL CDlgtestApp::InitInstance()
{
...
SetDialogBkColor(RGB(192, 0, 0), RGB(0, 0, 192)); //backgroung, text
...
}

//dynamisch umschalten (CWinApp::SetDialogBkColor() ist protected! deshalb eigene funktion als public)

class CDlgtestApp : public CWinApp
{
...
public:
void MySetDialogBkColor( COLORREF clrCtlBk = RGB(192, 192, 192), COLORREF clrCtlText = RGB(0, 0, 0) );
...
}

void CDlgtestApp::MySetDialogBkColor(COLORREF clrCtlBk, COLORREF clrCtlText)
{
SetDialogBkColor(clrCtlBk, clrCtlText);
m_pMainWnd->Invalidate();
m_pMainWnd->UpdateWindow();
}

void CDlgtestDlg::OnButton1()
{
CDlgtestApp* pApp = (CDlgtestApp*)AfxGetApp();
pApp->MySetDialogBkColor(RGB(192, 0, 0), RGB(0, 0, 192)); //backgroung, text
}

void CDlgtestDlg::OnButton2()
{
CDlgtestApp* pApp = (CDlgtestApp*)AfxGetApp();
pApp->MySetDialogBkColor(RGB(0, 192, 0), RGB(192, 0, 0));
}