dyroj
Messages postés123Date d'inscriptionvendredi 14 novembre 2008StatutMembreDernière intervention18 juin 2012
-
2 févr. 2009 à 11:54
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 2014
-
2 févr. 2009 à 21:51
bonjour,
j'ai voulu transposer une interface graphique faite sans ressource dans ressource, mais le probleme c'est que les dimention ne sont pas dutous pareille.
par exemple mais fenetre avait 300 px pour laxe des Y et maintenant elle doit faire envion 700 px.
++
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 2 févr. 2009 à 21:51
Petit exemple:
LONG baseunits=GetDialogBaseUnits();
LONG unitesX=LOWORD(baseunits);
LONG unitesY=HIWORD(baseunits);
// Convertir en pixels:
LONG LargeurEnPixels=MulDiv(LargeurEnUnites,unitesX,4);
LONG HauteurEnPixels=MulDiv(HauteurEnUnites,unitesY,8);
// Convertir en unités:
LONG LargeurEnUnites=MulDiv(LargeurEnPixels,4,unitesX);
LONG HauteurEnUnites=MulDiv(HauteurEnPixels,8,unitesY);
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 2 févr. 2009 à 21:06
Salut,
Avec les boites de dialogue, on n'utilise pas les pixels comme unité de mesure des dimensions. On utilise plutôt une unité spécifique aux boites de dialogue. Cette unité dépend de la police utilisée. Elle est ainsi utilisée dans les fichiers ressources contenant des dialog templates. Pour avoir quelques renseignements à ce sujet tu peux regarder la fonction GetDialogBaseUnits() et MapDialogRect() dans MSDN.
dyroj
Messages postés123Date d'inscriptionvendredi 14 novembre 2008StatutMembreDernière intervention18 juin 2012 2 févr. 2009 à 21:19
merci racpp mais je compren pas tros l'anglais, peut tu m'expliquer rapidement ces fonction.
Est ce possible de comvertir l'uniter de mesure(enfin chez pas vraiment comment appeler se) d'une boite de dialoge en px.
++