Static Text... Farbe..Grösse ?
-
Hi
ich hab ein label vom typ Static Text (Text Control) Feld. Hab jedoch nichts darüber gefunden wie ich die
Grösse
Farbe
einfügen eines Absatz bzw. neuer Zeiledes Textes, das ich anzeigen möchte, ändern kann.
Irgendeiner schon sowas gemacht.
Indian
-
Servus,
Schriftart, -größe:
CFont font; font.CreateFont( 12, // nHeight 0, // nWidth 0, // nEscapement 0, // nOrientation FW_NORMAL, // nWeight FALSE, // bItalic FALSE, // bUnderline 0, // cStrikeOut ANSI_CHARSET, // nCharSet OUT_DEFAULT_PRECIS, // nOutPrecision CLIP_DEFAULT_PRECIS, // nClipPrecision DEFAULT_QUALITY, // nQuality DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily "Arial"); // lpszFacename m_ctrStatic.SetFont(&font);
Dafür musst du einen neuen Font anlegen und dann dem Control mit SetFont() zuweisen. m_ctrStatic ist die Membervar von einem Static Ctrl.
Schriftfarbe, Hintergrundfarbe:
.hpublic: afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
.cpp
BEGIN_MESSAGE_MAP(CTestProjectDlg, CDialog) ON_WM_PAINT() ON_WM_QUERYDRAGICON() //}}AFX_MSG_MAP ON_WM_CTLCOLOR() END_MESSAGE_MAP() . . . HBRUSH CTestProjectDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); if (pWnd->GetDlgCtrlID()==IDC_STATIC_TEST) { pDC->SetTextColor(RGB(255,0,0)); //Textfarbe pDC->SetBkMode(TRANSPARENT); HBRUSH B = CreateSolidBrush(RGB(192,192,192)); //Hintergrundfarbe return (HBRUSH) B; } return hbr; }
IDC_STATIC_TEST ist hier die ID des Staticfeldes. Du kannst um Controls einzufärben, die MSG WM_CTLCOLOR abfangen. Das zeigt auch das Bsp.
Absatz einfügen geht normalerweise mit -> \r\n
\r = Carriage Return
\n = New LineViel Spaß
*winke*
Hellsgore
-
jetz bleibt nur noch das problem mit der farbe. muhkuh, dein link hab ich getestet-leider hat es nicht so bei mir geklappt. wenn ich anstatt der textfarbe die hintergrunddfarbe der jeweiligen Textfelder ändern könnte, wäre mir auch schon geholfen.
hab auch echt nirgens was dazu gefunden wie ich jetz bei dem cstring die textfarbe oder die hintergrundfarbe ändern kann
mfg, TFTS