10
votes

Cleandown Event ne fonctionne pas sur la clé PrintCreen

J'utilise C # Application Windows

Je vérifie quelle clé, utilisateur enfoncée par le clavier. J'ai vérifié toutes les clés mais elle ne fonctionne pas en cas d'impression xxx

alors comment détecter print escrim clé


3 commentaires

Est-il obligatoire de détecter PrintCreen avec la clé? Il est capturé par Keyup!


@ Hpt: vous avez raison, vous devriez poster cela comme une réponse.


La chose est que j'ai le même problème et j'utilise l'événement Keyup. Lorsque je fais une nouvelle application Silverlight, je peux attraper la clé d'écran d'impression. Mais dans mon ancienne application Silverlight qui contient des composantes Telerik, cela ne travaille pas d'indice pourquoi c'est le cas?


4 Réponses :


7
votes

La touche d'écran d'impression est piégée par le système d'exploitation avant d'être envoyé aux applications. Pour détecter ces clés, vous devez utiliser un clavier Hook . Vous êtes peut-être intéressé par cet article: hameçons de l'API Windows de bas niveau de C # pour arrêter les frappes de frappe indésirables < / a>


0 commentaires

11
votes

Vous pouvez utiliser Keyup, il capture PrintCreen clé.


1 commentaires

Et si je veux détecter PrintScreen sur la clé?



3
votes

Vous pouvez utiliser

e.Key == Key.Snapshot


2 commentaires

J'ai demandé à ces questions lorsque j'utilise .net 2.0 Cadre et je suppose que cela ne fonctionnerait pas là-bas


@Cainkellye OUI avec .NET Framework 3.5 et plus, il ne fonctionne pas, vous devez utiliser uniquement des événements de Keyup.



0
votes

Si l'événement KeyUp ne fonctionne toujours pas, essayez de modifier les formulaires KeyPreview propriété sur true , puis testez à nouveau l'événement Keyup. < / p>


0 commentaires