"Henrik" <hla@telenorconnect.com> wrote
> Hvordan ændre man farven på en (CStatic) text på en dialog ?.
Selvom du ikke skriver det, så antager jeg at spørgsmålet drejer sig om MFC
(senere end V4.0) med Microsoft Visual C++ på MS-Windows.
Jeg har egentlig ikke lyst til at fortælle hvordan - det er grimmere end man
bryder sig om!
> Ja, ja... SetTextColor() men der skal mere til, ikk ?.
Ja, en del mere.
Du skal bruge fange WM_CTLCOLORSTATIC og håndtere den.
Enten kan du gøre det fra dialogboksen med ON_WM_CTLCOLOR message-map
macroen, eller kan du lave en specialsering af CStatic og bruge
ON_WM_CTLCOLOR_REFLECT message-map macroen.
Så skal du "bare" skrive message-handler funktionen, og vupti i løbet af
10-50 linier kode i et par filer har du fået sat farven
.
Se Microsoft dokumentationen for ovennævnte preprocessor makroer, så skal
det nok lykkes for dig.
Venlig hilsen
Mogens Hansen
PS
I Borland C++Builder med VCL er det:
<C++Builder kode>
Label1->Color = clBlue;
Label1->Font->Color = clYellow;
</C++Builder kode>
I Visual Studio.NET 2003 med WinForm er det
<Visual C++ kode>
label1->BackColor = System::Drawing::Color::Blue;
label1->ForeColor = System::Drawing::Color::Yellow;
</Visual C++ kode>