Maison >développement back-end >C++ >Comment puis-je optimiser la mise à l'échelle du contrôle WinForms pour l'ajustement automatique dans les environnements à haute résolution ?
Mise à l'échelle du contrôle WinForms : pour un ajustement automatique optimal dans les environnements à haute résolution
Bien qu'il soit généralement admis que WinForms a des capacités de mise à l'échelle automatique limitées dans les environnements à haute résolution, en fait, .NET 2.0 et versions ultérieures ont considérablement amélioré ses capacités de mise à l'échelle automatique. Cependant, pour profiter pleinement de ces améliorations, les développeurs doivent suivre certaines directives de conception.
Contrôles qui ne prennent pas en charge la mise à l'échelle automatique
Certains contrôles ont des limites en termes de mise à l'échelle :
AutoSize
est désactivé et que la police est une police héritée, définissez explicitement l'attribut Font
pour éviter les erreurs de mise à l'échelle. ScaleControl
du formulaire pour gérer les ajustements de largeur de colonne. Panel1MinSize
, Panel2MinSize
et SplitterDistance
. MultiLine
est activé et que la police est une police héritée, définissez explicitement l'attribut Font
. CreateGraphics.DpiX
en fonction de .DpiY
et ToolStrip.ImageScalingSize
. SizeMode
est défini sur Zoom
ou StretchImage
. CreateGraphics.DpiX
en fonction de .DpiY
et ImageList.ImageSize
. Directives de conception
1. Contrôle des conteneurs
AutoScaleMode
de tous les contrôles de conteneur sur Font
. AutoScaleDimensions
à new System.Drawing.SizeF(6F, 13F)
(ajustez si nécessaire). 2. Configuration du concepteur
AutoSize
du contrôle conteneur est activée. 3. Gestion des polices
Font
uniquement au niveau du contrôle feuille ou dans le constructeur du formulaire de base (pour les valeurs par défaut à l'échelle de l'application). Font
dans le formulaire de base recalculera AutoScaleDimensions
; mettra à jour le fichier du concepteur en conséquence. 4. Amarrage et ancrage
Dock
au lieu de Anchor Right
ou Bottom
. 5. Contrôles ajoutés dynamiquement
AutoScaleDimensions
et AutoScaleMode
, puis reprenez la mise en page. 6. Classe de base et AutoScale
AutoScaleMode
défini sur Inherit
. Le définir sur toute autre valeur peut désactiver la mise à l’échelle automatique. 7. Limite de taille de fenêtre
MaxSize
statiques. Définissez OnLoad
et MinSize
sur les dimensions mises à l'échelle dans le constructeur ou l'événement MaxSize
. Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!