Static Text Farbe
-
Hallo,
ich habe eine (oder zweiFragen. Ich nutze Visual Studio.net und wollte nun die Textfarbe eines statischen Textes ändern? Ich habe viel geuscht habe nun 2 Fragen:
Zum einen lese ich oft, das man die Farbe in den Properties ändern kann... aber ich kann hier beim besten willen leider keine Einstellung zur Schift(-Farbe) finden..
Und zweitens habe ich mir hier schon eine Threads durchgelesen, verstehe aber nicht wirklich, wie ich einfach die Textfarbe im Code ändern kann... z.B. Fehler(rot) und OK (grün).
danke
-
mal die suchfunktion benutzen oder die MSDN lesen -> Stichwort: ON_WM_CTLCOLOR
-
hi, das hab ich schon angeguckt, weil ichs in nem anderen thread gelesen habe... aber ich kann damit leider nichts anfange -sorry
-
Schreib das hier in die WM_CTLCOLOR
if (pWnd->GetDlgCtrlID() == ID_DEINES_STATICS) { pDC->SetTextColor(RGB(0,0,255)); // Setzt die Textfarbe auf blau HBRUSH hBrush = CreateSolidBrush(RGB(255,0,0)); //Setzt die Hintergrundfarbe auf rot return (HBRUSH) hBrush; }
Gruß
:: NoName ::
-
:)) ich erstelle dann bei Message das WM_CTLCOLOR, oder? und dann schreibe ich den Code darein... aber wie sage ich dem Button nun, das der Text umgefärbt werden soll?
-
Hmm, die WM_CTLCOLOR erstellst du einfach mit dem ClassWizard.
Und danach fügst du den Code dort ein.dahein2 schrieb:
aber wie sage ich dem Button nun, das der Text umgefärbt werden soll?
Also, durch das If-Statement
if (pWnd->GetDlgCtrlID() == ID_DEINES_STATICS)
fragst du schon ab, welches Control gefärbt werden soll. Und dann kannst du mit
SetTextColor(RGB(255,0,0)) die Textfarbe ändern...Oder verstehe ich das falsch und du willst erst nach einem Buttonclick den Text färben...?
Gruß
:: NoName ::
-
Oder verstehe ich das falsch und du willst erst nach einem Buttonclick den Text färben...?
genau :)))
danke
-
bzw.. in nem if statement. halt jenachdem - aber sollte ja das gleiche sein, oder?
-
Hmm, kommt darauf an was genau du machen willst. Möchtest du den Benutzer aussuchen lassen welche Farbe das Textfeld hat...?
Gruß
:: NoName ::
-
hmm
nein, ich habe folgendesstatus(int wert) if(wert) { statischeText="Fehler"; UpdateData(FALSE); } else { statischeText="OK"; UpdateData(FALSE); }
und ich hätte gerne de Wortre FEHLER und OK gerne in rot bzw. rün--
-
Dann mach es so
if(pWnd->GetDlgCtrlID() == ID_DEINES_STATICS) { if(statischeText == "OK") { pDC->SetTextColor(RGB(0,190,0)); } else { pDC->SetTextColor(RGB(255,0,0)); } }
Die Farbe ändert sich dann automatisch, wenn in statischeText "OK" oder "Fehler" steht...
Gruß
:: NoName ::
-
danke, klappt super
vielen vielen Dank