2017-07-25 4 views
0

Dans cette syntaxe de déclaration de https://msdn.microsoft.com/en-us/library/windows/desktop/aa381003(v=vs.85).aspxQuelles sont les unités pour les mesures de dialogue MFC ressources

nameID DIALOG x, y, width, height [optional-statements] {control-statement . . . } 

quelles sont les unités utilisées pour la largeur et la hauteur? J'ai supposé qu'ils étaient des pixels, et ainsi réglé ma fenêtre à 640x480. Cependant, j'ai maintenant une fenêtre qui est trop grande pour mes besoins.

Répondre

0

Les unités sont des unités de dialogue comme expliqué dans l'instruction de définition de ressource DIALOGEX. Le DIALOG est obsolète. Extrait:

x
emplacement sur l'écran du côté gauche de la boîte de dialogue, dans les unités de dialogue.

y
emplacement sur l'écran du haut de la boîte de dialogue, dans les unités de dialogue.

Pour récupérer la boîte de dialogue des unités à base utilisent la fonction GetDialogBaseUnits . Selon la suggestion de xMRi, pour une police non système, utilisez this technique.

+0

Pour une police non système (et c'est le cas pour toutes les boîtes de dialogue standard dans les applications Windows modernes), vous devez utiliser: https://support.microsoft.com/en-us/help/125681/how-to- calculate-dialog-base-units-with-non-based-based-font – xMRi

+0

@xMRi Appréciez-le. J'ai mis à jour la réponse selon vos commentaires. – Ron