2009-07-06 6 views
0

Je suis en train de créer une fenêtre de panneau de contrôle plein écran avec beaucoup de contrôles: boutons, curseurs, listes, etc.Dimensionnement de la fenêtre plein écran en unités d'écran (pixel) avec l'éditeur d'interface graphique VS6 C++, MFC?

Je peux créer une fenêtre de dialogue et y ajouter des contrôles, mais tout est mis à l'échelle dans les unités de dialogue . Je veux juste créer une fenêtre dans l'éditeur graphique qui est mise à l'échelle en pixels, pas des unités dérivées comme des unités de dialogue.

Je peux trier tous les contrôles dans l'éditeur graphique, puis redimensionner la fenêtre en mode plein écran à l'aide de SetWindowPos, mais la fenêtre de dialogue dans l'éditeur graphique ne sera pas identique au produit final. Je veux que ce soit WYSIWIG dans l'éditeur graphique.

Ceci est la face avant d'un petit ordinateur de contrôle d'instrument dédié sous XP. Le SDK est écrit en MFC. Je dois ajouter et modifier les contrôles fréquemment. L'écran est petit, 7 "@ 800 x 600, donc bien sûr je développe le programme sur un autre ordinateur, je ne veux pas que la fenêtre du programme change quand je change de moniteur - je le veux fixé à 800 x 600, et je veux que les contrôles à fixer dans la taille et la mise en page et

Il doit y avoir un moyen -.. ce qui est plus basique que la fonctionnalité par défaut

Merci

Répondre

1

unités de dialogue sont basées sur. Propriétés de la police utilisée par la boîte de dialogue Une unité de dialogue horizontale est égale à 1/4e de la largeur moyenne de la police en cours

Un dialo vertical g unité est égale à 1/8 de la hauteur moyenne des caractères de la police courante.

Je recommande d'utiliser method 2 (MapDialogRect() pour une boîte de dialogue 4 x 8) pour déterminer le nombre de DLU 800x600 correspondant à votre affichage de sortie, puis créer un formulaire de référence égal à cette taille. Vous pouvez ensuite utiliser ce formulaire de référence pendant la conception.

p.s.-Je suis content que Visual Studio ne mette plus l'accent sur les unités de dialogue, car elles étaient toujours difficiles à gérer.

0

Merci. J'ai été en mesure de faire un formulaire de référence en redimensionnant le formulaire manuellement dans l'éditeur de l'interface graphique encore et encore jusqu'à ce qu'il remplisse exactement l'écran ... Sans blague que les unités de dialogue sont une douleur. D'après votre réponse, je suppose que dans le Visual Studio actuel, il existe une meilleure façon de faire cela? (Ceci est ma première expérience avec la programmation Windows).