2009-03-18 5 views
1

J'ai une fenêtre wpf qui a une hauteur de 2000 avec une hauteur de bureau réelle d'environ 1000. Évidemment, environ la moitié de la fenêtre est hors de l'écran. Même si la fenêtre s'étend sous l'écran, la souris ne descendra pas dans cette zone. Je veux que ce contenu soit hors écran, et je veux que la souris puisse le déplacer et cliquer sur les éléments si la souris est positionnée sur un élément à cette position. Je ne veux pas changer la résolution de mon écran car certains contenus doivent absolument être hors de l'écran. Je ne sais pas comment s'y prendre.déplacer le curseur de la souris hors de l'écran en C#

Répondre

4

La délimitation de curseur n'est pas effectuée par l'application, mais par Windows elle-même. À ma connaissance, il n'y a aucun moyen d'avoir votre curseur pointant sur l'écran.

Vous pouvez simuler ce que vous voulez en faisant ce que beaucoup de jeux font. Ne dessinez pas le curseur Windows, dessinez un personnalisé dans la fenêtre de votre application. Forcer le curseur réel (n'étant pas dessiné) pour rester au centre du moniteur. Chaque fois que l'utilisateur déplace le curseur réel, déplacez le curseur de votre application en conséquence et replacez le curseur réel au centre de l'écran. Cela donnera l'illusion de ce que vous voulez, mais je ne pense pas que WPF puisse gérer cela.

1

Il n'y a pas de position de curseur à l'extérieur de Windows. Je pense que la souris est limitée par la résolution de l'écran, même si les fenêtres ne le sont pas.

0

Je pense que c'est possible. This program permettra d'utiliser un ordinateur secondaire comme un moniteur supplémentaire. Il existe plusieurs programmes qui peuvent vous indiquer les coordonnées du curseur de votre souris. Par exemple AutoIt le fera facilement.

enter image description here

Lorsque vous installez AutoIt il est livré avec cet utilitaire qui vous permettra de connaître les cordinates où vous placez la souris. Lorsque j'ai pris la capture d'écran, la souris n'apparaît pas mais je dessine un point bleu où se trouvait la souris. Notez que le cordinates où 710, 1464. En ce moment ma résolution d'écran est 1200 * 1920 (mon moniteur est tourné). Donc, avec Autoit Je suis en mesure de positionner le curseur de la souris en faisant quelque chose comme

enter image description here

Quand je lance ce programme autoit il se déplace la souris à cet endroit. Les réponses à cette question semblent être justes parce que je ne suis pas capable de déplacer la souris au-delà de 1200 vers la droite. En d'autres termes, l'exécution de MouseMove (2500,800) entraînera le déplacement de la souris à 1200,800. Maintenant, le partie intéressante est comment se faire Je suis capable de déplacer la souris à (2500,800)! si j'utilise This program En d'autres termes, l'exécution MouseMove(2500,800) fonctionne maintenant avec Autoit et la souris se déplace réellement vers l'autre ordinateur (maxivista doit être en cours d'exécution). maxivista montre qu'il peut y avoir un moyen de déplacer la souris en dehors de la résolution de votre écran.

1

Si vous jetez un oeil sur les captures d'écran de MaxiVista vous trouverez une capture d'écran montrant le Gestionnaire de périphériques:

Device Manager http://www.maxivista.com/pics/screenshots/vista_devicemanager_en.gif

Comme vous pouvez le voir, ils simplement écrit un adaptateur d'affichage virtuel, qui fournit sa propre taille d'affichage. Ainsi, les fenêtres seront informées de la taille disponible, par ex. 2560x1600 serait possible et permet ces limites pour toutes les fenêtres et la souris.Il appartient maintenant au pilote d'affichage de transmettre les bonnes portions de cet écran virtuel aux adaptateurs d'affichage réels actuels de sorte que la partie droite soit affichée sur chaque périphérique physique.

+0

oliver pour accepter votre réponse! Je vais commencer une autre prime et vous donner des points désolé à ce sujet –

+0

oliver je vais vous attribuer la prime à: http://stackoverflow.com/questions/694730/why-is-set-as-startup-option-stored -dans-le-suo-fichier-et-non-le-sln-fichier dès que le débordement de pile me permet ... –

Questions connexes