Farbe vom Text Feld Ändern ??
-
Hallo Zusammen
wie Ändere ich die Farbe von einem Textfeld?
if(pWnd->GetDlgCtrlID() == IDC_TEXTFELD1)
{pDC->SetTextColor(RGB(95,100,144));
pDC->SetBkColor(RGB(255,0,0));}
damit kann ich den text und den hintergrund vom text ändern
Aber wie kann ich die farbe vom Textfeld ändern?kann mir jemen helfen bitte
Grüße Can
-
Der Rückgabewert der FUnktion bestimmt die Hintergrundfarbe.
-
Hallo dEUs
wie meinst du das mit dem rückgabewert?
HBRUSH CMaxMidiProtoDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);if(pWnd->GetDlgCtrlID() == IDC_TextFeld)
{pDC->SetTextColor(RGB(0,0,255));
pDC->SetBkColor(RGB(25,0,0));return hbr;
}
Der rückgabe wert ist hbr. oder wie muss ich es machen kannst du mir genau sagen was passieren muss?
Grüße Can
-
Mach ne Membervariable vom Typ CBrush. Mach in OnInitDialog dann ein CreateSolidBrush und in OnCtlColor ein return brush;
-
Hallo dEUs
hab jetz in meine Dialog.h eine M_variable von typ CBrush angelegt.
es wird in Dialog.cpp nicht erkannt.
dann habe ich es in Dialog.cpp Angelegt.
jetz wird es erkannt.m_Brush.CreateSolidBrush(COLORREF crColor)//
was muss ich hier eintragen m_Brush.CreateSolidBrush(??????????)
was für ein parameter muss da eintragen ?
grüß Can
-
RGB(Grün,Rot,Blau);
-
Hallo dEUs
habe jetz in
BOOL CMaxMidiProtoDlg::OnInitDialog()
{
CDialog::OnInitDialog();CBrush m_Brush;
m_Brush.CreateSolidBrush(RGB(255,25,155));
Und in
HBRUSH CMaxMidiProtoDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);if(pWnd->GetDlgCtrlID() == IDC_BOOK1)
{pDC->SetTextColor(RGB(95,100,144));
//pDC->SetBkColor(RGB(255,0,0));return m_Brush;
}Aber die farbe vom Textfeld ändert sich nicht!
Was mache ich falsch ?
-
die ID vom Textfeld ist ID_BOOK1
-
Ich sagte doch: eine Membervariable! Du legst in OnInitDialog nochmals eine lokale an ...
-
woooooov alles ist jetzt Bunt :))
Aber nicht mein texfeld wie kann ich geziehlt mein texfeld ansprechen?
-
du darfst den brush natürlich nur zurückgeben, wenn (pWnd->GetDlgCtrlID() == IDC_BOOK1)!
ansonsten gibste den normalen zurück.
-
Dankeeeeeeeeeeeeeee!!!!!!!!!
Hast mich von meinem qualen erlöst..
Hab jetz
Grüße Can
-
can28 schrieb:
Hast mich von meinem qualen erlöst..
Mich hoffentlich jetzt auch
-