Static Control - Font grösser machen
-
hi, ich habe eine dialoganwendung, auf welcher nun einige buttons und static controls usw. sitzen.
jetzt möchte ich als überschrift eine static control verwenden, welche aber eine grössere schriftart aufweist als die restlichen controls.
kann mir diesbezüglich jemand tips / links geben. danke !
-
* Font vom Static geben lassen (CFont * GetFont())
* Font-Beschreibung (LOGFONT) des fonts geben lassen
* in der LOGFONT-Struktur die Größe anpassen
* Neuen Font auf Basis dieses Fonts erstellen
* Font setzen
-
Was peterchen sagen möchte ist folgendes :

LOGFONT lf; memset(&lf, 0, sizeof(LOGFONT)); strcpy(lf.lfFaceName, "Arial"); lf.lfWeight = FW_HEAVY; lf.lfUnderline = FALSE; lf.lfHeight = 20; font.CreateFontIndirect(&lf); GetDlgItem(IDC_STATIC_DEIN_STEURELEMENT)->SetFont(&font);Schreib das in die WM_INITDIALOG. Jetzt musst du nur noch in der Dlg.h ein Variable von CFont deklarieren (CFont font) !
Gruß
:: NoName ::
-
Hat den nachteil, das der Font immer Arial ist

-
jo statt den logfont selber zu basteln kannst du auch einfach dir den des zu ändenden windows holen und diesen direkt modifizieren
LOGFONT new_logfont; GetDlgItem(IDC_STATIC_INFORMATION)->GetFont()->GetLogFont(&new_logfont); new_logfont.lfHeight=24; new_font.CreateFontIndirect(&new_logfont); GetDlgItem(IDC_STATIC_INFORMATION)->SetFont(&new_font);
-
danke für eure antworten.
ich habe beide vorschläge versucht, und im oninitdialog eingebaut.
Beide liefern dasselbe ergebnis:der Text vom Static Steuerelement wird zwar fett dargestellt, aber die grösse ändert sich nicht, egal was ich angebe - die grösse bleibt immer gleich...

BOOL CStatictestDlg::OnInitDialog() { CDialog::OnInitDialog(); LOGFONT lf; CFont font; memset(&lf, 0, sizeof(LOGFONT)); strcpy(lf.lfFaceName, "Arial"); lf.lfWeight = FW_HEAVY; lf.lfUnderline = FALSE; lf.lfHeight = 70; font.CreateFontIndirect(&lf); GetDlgItem(IDC_STATIC_1)->SetFont(&font); return TRUE; }
-
du musst font als membervariable anlegen und nicht als wird wieder nach der funktion gekillt variable...
-
hey, toll funz volles rohr !!!!
danke euch allen ganz herzlich !
