Maison > développement back-end > C++ > Comment puis-je obtenir les dimensions exactes de l'écran actuel dans une application WPF ?

Comment puis-je obtenir les dimensions exactes de l'écran actuel dans une application WPF ?

Susan Sarandon
Libérer: 2025-01-05 02:30:09
original
446 Les gens l'ont consulté

How Can I Get the Exact Dimensions of the Current Screen in a WPF Application?

Obtention des dimensions de l'écran actuel dans WPF

Dans WPF, les développeurs s'appuient généralement sur SystemParameters.PrimaryScreenWidth et SystemParameters.PrimaryScreenHeight pour déterminer la taille de l'affichage principal. Cependant, cette approche ne convient pas aux configurations multi-écrans dans lesquelles les utilisateurs n'utilisent peut-être pas l'écran principal et tous les écrans n'ont pas la même résolution.

Pour résoudre ce problème, il faut étendre la portée au-delà de l'écran principal. Une solution possible consiste à envelopper la classe Screen de System.Windows.Forms dans une classe personnalisée adaptée à WPF.

La classe WpfScreen

La classe WpfScreen fournit un ensemble complet de méthodes pour récupérer les dimensions de l’écran actuel, qu’il soit accessible à partir de XAML ou de code. Examinons ses capacités :

  • AllScreens() : cette méthode statique renvoie une collection d'instances WpfScreen représentant tous les écrans disponibles dans le système.
  • GetScreenFrom(Window window) : utilisez ceci méthode pour récupérer l'objet WpfScreen associé à une instance Window spécifique.
  • GetScreenFrom(Point point) : En fournissant un point dans l'application, cette méthode détermine à quel écran il appartient et renvoie son objet WpfScreen correspondant.
  • Primaire : Cette propriété statique fournit un accès rapide à l'objet WpfScreen pour l'affichage principal.

En dehors de ces méthodes, la classe WpfScreen propose les éléments suivants propriétés :

  • DeviceBounds : représente la zone rectangulaire de tout l'écran, y compris la barre des tâches et tout autre élément empiétant sur ses limites.
  • WorkingArea : similaire à DeviceBounds, mais exclut les zones occupées par la barre des tâches et d'autres éléments pouvant limiter le contenu de l'application.
  • IsPrimary : Indique si l'écran est l'écran principal display.
  • DeviceName : fournit le nom de l'appareil associé à l'écran.

Implémentation

L'implémentation de WpfScreen exploite la classe System.Windows.Forms.Screen pour recueillir des informations sur les écrans physiques connectés au système. Il enveloppe ensuite ces détails d'une manière compatible avec les applications WPF, permettant une intégration transparente avec divers aspects de l'interface utilisateur.

En utilisant la classe WpfScreen, les développeurs peuvent déterminer sans effort les dimensions et les caractéristiques de l'écran actuel, quel que soit le type d'écran actuel. de savoir s'ils utilisent ou non plusieurs écrans. Cela leur permet de concevoir des interfaces utilisateur adaptatives adaptées à diverses résolutions et configurations d'écran.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal