2009-06-01 7 views
3

J'ai une application MFC avec quelques bitmaps, boîtes de dialogue et menus. Actuellement, il ne prend en charge qu'une résolution de moniteur (1280x1024). Je prévois d'y ajouter un support de résolution de moniteur différent. Pour ce faire, je suppose que je dois charger différentes bitmaps de résolution, modifier la taille de la police, etc. Ma question est, comment ceux-ci sont gérés dans une application Windows typique? Est-ce qu'ils utilisent une seule image bitmap et l'étirent/la rétrécissent en fonction de la résolution du moniteur ou ont en fait un ensemble différent de bitmaps dans la ressource et les chargent dynamiquement en fonction de la résolution? Y a-t-il une solution standard à cela?Prise en charge de différentes résolutions de moniteur

Répondre

2

Dans le passé, j'ai utilisé une grande image et mis à l'échelle en conséquence. S'assurer que les menus et les boîtes de dialogue sont redimensionnés est difficile, mais il existe des codes d'aide sur CodeProject qui pourraient aider.

1

Je dirais d'utiliser plusieurs ressources avec différentes résolutions. Même si vous pouvez redimensionner les icônes dynamiquement, elles seront probablement mieux si vous les redimensionnez dans un programme d'édition d'image approprié.

1

Les icônes de menu et de barre d'outils sont normalement affichées avec le même nombre de pixels, quelle que soit la résolution de l'écran. Ainsi, les menus et les barres d'outils occupent une plus petite proportion de l'écran à mesure que la résolution augmente.

Je ne pense pas qu'il existe un moyen standard de gérer différentes résolutions en ce qui concerne les bitmaps.

1

Je m'assurerais également que votre application fonctionne avec la mise à l'échelle DPI de Windows. Cela pourrait être une meilleure alternative lors de l'exécution sur des écrans à haute résolution plutôt que d'avoir à redessiner l'application pour répondre à une résolution spécifique.

0

La mise à l'échelle des images bitmap aura l'air mauvaise (les rendre plus grandes auront toujours l'air mauvaises, les rendant plus petites dépendent de la source). Si possible, voyez si vous pouvez composer votre grand bitmap de plusieurs bitmaps plus petits qui peuvent bien évoluer. Beaucoup de fois, il est assez facile de faire un bitmap qui peut bien évoluer dans une direction. Par exemple, si vous voulez faire un cadre autour de quelque chose, au lieu d'utiliser un bitmap, découpez-le comme un tableau de tic-tac-toe en 9 morceaux. les quatre pièces d'angle conservent leur taille d'origine, les pièces du haut et du bas s'étirent horizontalement, la gauche et la droite verticalement, et le centre va dans les deux sens (s'il est utilisé).

Questions connexes