Incompréhensible CFont ...
Bonjour,
je suis sous W2000, j'utilise :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
CStatic* pStatic = (CStatic*)GetDlgItem(IDC_STATIC_1);
CFont* pFont1 = pStatic->GetFont();
pFont1->GetLogFont(&LogFont);
LogFont.lfWeight = FW_BOLD;
LogFont.lfHeight = 24;
CFont pFont;
pFont.CreateFontIndirect(&LogFont);
pStatic->SetFont(&pFont); |
pour changer la fonte d'un static, mais cela ne marche pas : seul le gras est fait !
J'ai également essayé :
Code:
1 2 3 4 5 6 7 8
|
CFont font;
font.CreateFont (24, 0, 0, 0, FW_BOLD, 0, 0, 0,
DEFAULT_CHARSET, OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS,
DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, _T ("Arial"));
GetDlgItem(IDC_STATIC_1)->SetFont(&font); |
mais ça ne marche pas non plus !!
La seule chose qui marche est :
Code:
1 2 3 4 5 6 7 8
|
CFont* pFont = new CFont;
pFont->CreateFont (24, 0, 0, 0, FW_BOLD, 0, 0, 0,
DEFAULT_CHARSET, OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS,
DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, _T ("Arial"));
GetDlgItem(IDC_STATIC_1)->SetFont(pFont); |
Le problème c'est que je me retrouve avec une allocation que je ne libère pas, car si je fais un
cela ne marche pas non plus !!!
:x