Accès aux paramètres d'affichage Windows dans les applications C#
Windows 7 et versions ultérieures offrent des paramètres d'affichage personnalisables, permettant aux utilisateurs d'ajuster la taille du texte et d'autres aspects visuels. L'accès à ces paramètres est crucial pour de nombreuses applications afin de garantir un bon fonctionnement.
Récupération de la mise à l'échelle de l'affichage Windows en C#
Bien que C# puisse accéder aux paramètres d'affichage, s'appuyer uniquement sur graphics.DpiX
et DeviceCap.LOGPIXELSX
pourrait ne pas fournir des facteurs de mise à l'échelle précis à tous les niveaux.
Un calcul du facteur d'échelle plus précis
Pour une détermination précise du facteur d'échelle, utilisez cette méthode :
Importez la bibliothèque gdi32.dll
.
Définissez une énumération pour les capacités des appareils (DeviceCap
).
Implémenter une méthode pour calculer le facteur d'échelle :
GetDeviceCaps
pour récupérer les hauteurs logiques et physiques de l'écran en pixels.Exemple de code :
<code class="language-csharp">using System; using System.Drawing; using System.Runtime.InteropServices; public class DisplayScaler { [DllImport("gdi32.dll")] static extern int GetDeviceCaps(IntPtr hdc, int nIndex); public enum DeviceCap { VERTRES = 10, DESKTOPVERTRES = 117 } public float GetScalingFactor() { using (Graphics g = Graphics.FromHwnd(IntPtr.Zero)) { IntPtr desktop = g.GetHdc(); int logicalHeight = GetDeviceCaps(desktop, (int)DeviceCap.VERTRES); int physicalHeight = GetDeviceCaps(desktop, (int)DeviceCap.DESKTOPVERTRES); g.ReleaseHdc(desktop); return (float)physicalHeight / logicalHeight; } } }</code>
Cette approche garantit que les applications C# récupèrent avec précision le facteur de mise à l'échelle de l'affichage Windows, permettant ainsi des ajustements en fonction des paramètres d'affichage de l'utilisateur.
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!