Jeg vil sætte baggrundsfarven for samtlige dialog bokse i mit MFC projekt. Jeg har søgt på google og er kommet frem til følgende forslag: Overwrite InitInstance og tilføj følgende metode SetDialogBkColor(RGB(255, 0, 0), RGB(0, 255, 0)) Koden der bliver foreslået ser således ud:
BOOL CMyApp::InitInstance() { // lets set red background and green text for our dialogs SetDialogBkColor(RGB(255, 0, 0), RGB(0, 255, 0)); }
Hvor skal dette kodestykke placeres for at fungere og hvad er CMyApp helt præcist?
Funktionen SetDialogBkColor er forældet og den "korrekte" metode til at ændre bagrundsfarven på dialoger og kontroller er ved at håndtere WM_CTLCOLOR message'en.
For MFC apps betyder det at definere ON_WM_CTLCOLOR() i messagemappet for de dialoger du vil ændre baggrundsfarven for og implementere OnCtlColor funktionen.
medions >> CMyApp i ovenstående eksempel er navnet på den klasse der er nedarvet fra CWinApp, altså ikke en constructor og heller ikke navnet på projektet.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.