Bonjour,
je souhaite cr�er un label (Cstatic) dont la taille de la police diminue si le texte ne tient pas dans le rectangle d'affichage.
Donc j'ai d�riv� un CStatic dont j'ai surcharg� la fonction d'affichage OnPaint() comme ceci :
Ce code fonctionne bien par contre j'aimerais reaugmenter la taille au fur et a mesure que le texte diminue.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 LOGFONT lf; GetLogFont(lf); // Get Current font properties ::GetTextExtentPoint32(pDCMem->GetSafeHdc(), csText, csText.GetLength(), &sz); if ( sz.cx > pRect->Width() ){ lf.lfHeight -= 1; // diminue font size SetFont( &lf ); } else{ } pDCMem->DrawText(csText, pRect, dwFlags);
J'ai essay� de remplir le else comme ca :
else{
if (lf.lfHeight < nTailleInitial)
lf.lfHeight += 1; // augmente font size
SetFont( &lf );
}
mais j'obtiens une espece d'oscillation d'affichage.
Partager