Bonjour,
Dans un CDialog, j'ai un objet RichEdit.
Je voudrai calculer la hauteur de 6 lignes de texte afin de pouvoir modifier la hauteur de ce controle pour qu'il contienne exactement ces 6 lignes.
J'ai essay� GetTextExtend() qui ne semble pas g�rer les saut de lignes, il marche bien pour la largeur mais pas la hauteur.
Je suis entrain de me battre avec le GetFont() mais la fonte que je r�cup�re n'est pas la bonne.
Le but �tant que la hauteur du RichEdit s'adapte automatiquement au nombre de lignes de la string � afficher et aussi � la fonte choisie par Windows lors de la cr�ation de mon dialogue.
Mon code :
Merci de votre aide.
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 void CMyRichEdit::SetText(const CString & String6Lignes) { CRect rect; GetWindowRect(rect); GetParent()->ScreenToClient(rect); CClientDC dc(this); CFont* font = dc.GetCurrentFont(); LOGFONT lf; font->GetLogFont(&lf); int cy = lf.lfHeight; rect.bottom = rect.top + (6 * cy); MoveWindow(rect); }
Partager