Conversion de pixels pour le calcul de la longueur d'1 champ
Bonjour,
Je dois ajuster la taille d'un champ CStatic en fonction du texte que j'y mets à l'intérieur. Pour connaître la taille de mon texte, j'utilise la fonction GetTextExtendPoint32 qui me rend la taille en pixels. De là, j'essaie de convertir ces pixels en CRect pour l'affichage du CStatic à la taille du texte. Mais ça ne marche pas!!! Est-ce que je m'y prends bien? Dois-je utiliser une autre méthode?
Merci pour vos idées,
Hugues
Conversion de pixels pour le calcul de la longueur d'1 champ
Pour la position du CStatic, j'utilise :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
CRect rec;
MonStatic->GetWindowRect(&rec);
MonStatic->ScreenToClient(&rec);
//la taille de mon message en pixels dans sz
Size sz;
::GetTextExtentPoint32(dc.GetSafeHdc(), m_msg, m_msg.GetLength(), &sz);
//ensuite, j'ai essayé ceci (mais la conversion n'est pas bonne!)
rec.Rigth= sz.cx;
MonStatic->MoveWindow(&rec); |
Merci,
Hugues
Conversion de pixels pour le calcul de la longueur d'1 champ
C'est ce que je fais, pardon. J'ai mal recopié mon code....Je crois que le problème vient au niveau de la conversion des pixels vers le CRect...