Je fais un jeu de clicker dans Visual Studio C # Winforms et après avoir cliqué une fois sur le bouton, vous pouvez simplement tenir la touche Entrée pour gagner de l'argent, je veux faire la désactivation de cela. P>
3 Réponses :
Selon où attrapez-vous l'événement, à l'intérieur d'un bouton ou, vous devez «intercepter» la clé que vous recherchez 13 = Retour de chariot P> P>
C'est certainement un moyen de le faire, même si vous n'avez pas "à", je crois aussi que ce n'est pas aussi propre que ma solution, mais dans certains aspects mieux. Jouer manuellement avec la mise au point peut être une douleur dans le derrière pour suivre si quelque chose ne se comporte pas comme prévu
Bien sûr, vous n'êtes pas obligé, il existe plusieurs solutions au même problème. J'essaie juste d'aider
Assumant Utilisez WinForms comme cadre GUI, ajoutez simplement cette ligne de code:
this.Focus();
Vous pouvez changer l'événement qui ajoute de l'argent de "this.keydown" à "this.keyup". Cela rend l'événement uniquement le feu après la libération du bouton (après avoir été enfoncé pour la première fois). Cela permet de maintenir le bouton "Entrée" inefficace, car vous devriez le relâcher avant que quelque chose ne se passe. P>
Ceci permet toujours au joueur de simplement modifier la touche "Entrée" au lieu de cliquer rapidement, mais cela pourrait être considéré comme étant donné que cette méthode ne désactive pas la touche "Entrée" P>
Où est-ce que je reste cet événement?
Dans les propriétés du bouton WinForm, il existe une liste complète des événements que vous pouvez choisir, l'un d'eux est "Keydown", une autre est "Keyup". Celles-ci offrent la possibilité de choisir quelle méthode dans le code derrière fonctionner lorsque l'événement se produit (le cas échéant)
C # peut signifier tant de technologies .. Quelle technologie utilisez-vous pour construire le jeu?
Et quel code avez-vous essayé? S'il vous plaît fournir un code d'extraction.
Je ne connais pas la fabrication d'applications d'interface graphique en C # mais je suppose qu'il existe une sorte de fonction
flou () code> qui supprimerait la mise au point du bouton.WPF? ASP.NET WebForms? ASP.NET MVC 5? ASP.NET CORE MVC? Veuillez Modifier B> la question et clarifier.
Assumant Utilisez WinForms, il suffit d'ajouter
this.focus () code> à la fin du gestionnaire d'événements de clic