Comment : gérer les modifications d'orientation et de résolution
Mise à jour : novembre 2007
Le tableau suivant indique les orientations de l'écran Pocket PC et Smartphone prises en charge par le .NET Compact Framework. Les dimensions sont exprimées en pixels, en largeur par hauteur.
Orientation de l'écran |
Dimensions classiques 96 ppp |
Dimensions classiques 192 ppp (haute résolution) |
---|---|---|
Portrait - Pocket PC Portrait - Smartphone |
240 x 320 176 x 220 et 240 x 320 |
480 x 640 352 x 440 et 480 x 640 |
Paysage - Pocket PC uniquement |
320 x 240 |
640 x 480 |
Écran carré - Pocket PC uniquement |
240 x 240 |
480 x 480 |
Vous pouvez utiliser l'ancrage et l'arrimage pour redimensionner automatiquement des contrôles afin que le contenu du formulaire s'adapte à différentes orientations d'écran. L'ancrage conserve une distance spécifiée par rapport à un bord, alors que l'arrimage s'aligne sur un bord du conteneur parent.
La propriété Anchor d'un contrôle détermine son comportement de redimensionnement lorsque le contrôle conteneur ou le formulaire est redimensionné. La propriété Dock d'un contrôle spécifie à quels bords de son contrôle conteneur s'attacher.
L'ancrage a le même comportement dans le .NET Compact Framework que dans le .NET Framework complet.
Vous pouvez personnaliser votre application pour l'adapter aux différents paramètres de résolution en pixels ppp (points par pouce).
Pour gérer une modification d'orientation de l'écran
Vous pouvez placer des contrôles qui doivent se trouver dans une zone précise du formulaire dans un contrôle conteneur, tel que Panel, puis définir la propriété Dock de Panel en fonction du bord voulu.
Pour conserver la taille et l'emplacement appropriés d'un contrôle par rapport aux côtés de son formulaire, définissez la propriété Anchor des contrôles en fonction de l'emplacement voulu.
Par exemple, pour qu'un bouton s'affiche toujours dans le coin inférieur droit et conserve sa taille, utilisez l'instruction suivante :
Me.Button1.Anchor = AnchorStyles.Bottom Or AnchorStyles.Right
this.button1.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
Dans Microsoft Visual Studio 2005, vous pouvez définir les paramètres d'ancrage dans le volet Propriétés.
Pour modifier l'orientation de l'écran
Si votre Pocket PC exécute Windows Mobile version 5.0, vous pouvez modifier l'orientation de l'écran de portrait à 0 degré en une orientation à 90, 180 et 270 degrés, comme spécifié par l'énumération ScreenOrientation. Par exemple, l'instruction suivante définit une orientation paysage :
SystemSettings.ScreenOrientation = ScreenOrientation.Angle270
SystemSettings.ScreenOrientation = ScreenOrientation.Angle270;
Notez que l'orientation de l'écran modifie le périphérique et pas seulement l'application. Par conséquent, il est conseillé de redéfinir l'orientation de l'écran à son paramètre d'origine dans le code de gestion des événements pour l'événement FormClosing.
Pour gérer une modification de la résolution d'écran
Lorsque vous créez un projet Smart Device dans Microsoft Visual Studio 2005, le concepteur fournit du code pour mettre automatiquement à l'échelle, et de manière appropriée, les contrôles pour la résolution d'écran du périphérique ; sinon, si votre application est exécutée sur un périphérique avec une résolution ppp (points par pouce) différente de celle que le périphérique a utilisée pour son développement, le formulaire apparaît ou trop grand ou trop petit. Par conséquent, les contrôles du formulaire doivent être mis à l'échelle de façon appropriée.
Lorsque vous créez un projet Smart Device dans Visual Studio 2005, le concepteur ajoute les instructions suivantes à la méthode InitializeComponent :
[Visual Basic]
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
[C#]
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
Ces instructions montrent une application qui est développée pour un périphérique ayant une résolution de 96 ppp et la mise à l'échelle automatique exécutée à l'aide du mode ppp. Notez que 96 ppp est la valeur par défaut obtenue sur l'ordinateur de bureau qui exécute Visual Studio 2005. Le concepteur génère automatiquement ce code et les contrôles de votre formulaire sont mis automatiquement à l'échelle pour gérer différents paramètres ppp.
Si votre application contient des graphismes qui sont dessinés dans la méthode OnPaint, ils ne sont pas mis à l'échelle automatiquement. Vous devez utiliser les propriétés DpiX et DpiY de vos objets Graphics pour déterminer l'échelle appropriée. Texte pivoté avec LogFont, exemple montre un exemple de mise à l'échelle manuelle.
Voir aussi
Tâches
Comment : aligner un contrôle sur les bords des formulaires
Concepts
Mise à l'échelle automatique dans les Windows Forms