Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Question programmation
Chapochinoi Hors ligne Membre Points: 24 Défis: 0 Message

Question programmation

Posté le 17/06/2018 22:15

Bonjour, en ce moment je suis en froid avec la fonction Getkey et j'ai besoin d'aide.
Y aurait il un moyen de "réinitialiser" Getkey car j'ai l'impression que même si l'on n'utilise pas cette fonction, elle enregistre quand même les touches qu'on appuie et donc quand on l'utilise il y a déjà une touche (souvent EXE).
Je ne sais pas si vous comprenez très bien ce que je veux dire, posez moi des questions si je ne suis pas assez explicite


Drak Hors ligne Rédacteur Points: 1925 Défis: 40 Message

Citer : Posté le 17/06/2018 22:23 | #


Le getkey est la fonction qui récupère les codes des touches que tu presses. Par défaut, elle renvoie la valeur 0 : c'est-à-dire que lorsque tu n'appuies sur aucune touche, elle renvoie toujours 0. Lorsque tu appuie sur une touche, sa valeur change et lorsque tu relâche ladite touche, elle revient à 0.
Tiens, un lien utile pour toi !

Eon the Dragon : version 1.2
Let's have a look!
Marre de ces RPGs qui t'imposent des classes, des compétences et des sorts ? Crée tes propres capacités sur Eon the Dragon ! Des monstres, des dragons et des combats aussi épiques que difficiles t'attendent !
Un RPG unique et immense t'attend ! Joue dès maintenant à Aventura, le Royaume Poudingue !
Vous aussi, soyez swag et rejoignez Planète Casio !
Shadow15510 Hors ligne Administrateur Points: 5503 Défis: 18 Message

Citer : Posté le 17/06/2018 22:26 | #


Je crois que j'ai compris essaye d'insérer la ligne de code suivante juste avant le début de ta boucle avec la getkey :
Au lieu de :

0→G
Do
Getkey→G
LpWhile G=0

tu met :

For 0→A to 75 : Next
0→G
Do
Getkey→G
LpWhile G=0

Ca devrait aller mieux
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Drak Hors ligne Rédacteur Points: 1925 Défis: 40 Message

Citer : Posté le 17/06/2018 22:27 | #


ça n'a aucun intérêt, sauf si tu as ta boucle de getkey en tout début de programme.
Eon the Dragon : version 1.2
Let's have a look!
Marre de ces RPGs qui t'imposent des classes, des compétences et des sorts ? Crée tes propres capacités sur Eon the Dragon ! Des monstres, des dragons et des combats aussi épiques que difficiles t'attendent !
Un RPG unique et immense t'attend ! Joue dès maintenant à Aventura, le Royaume Poudingue !
Vous aussi, soyez swag et rejoignez Planète Casio !
Chapochinoi Hors ligne Membre Points: 24 Défis: 0 Message

Citer : Posté le 17/06/2018 22:34 | #


Merci shadow ca Marche ! Est ce que tu aurais une raison à donnée PourQuoi ?
Dark storm En ligne Labélisateur Points: 11641 Défis: 176 Message

Citer : Posté le 17/06/2018 22:36 | #


Oui : quand tu lance le programme, ça va tellement vite que tu n'as pas le temps de retirer le doigt. Le code qu'il t'as filé mets en pause le programme un court instant
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Shadow15510 Hors ligne Administrateur Points: 5503 Défis: 18 Message

Citer : Posté le 18/06/2018 08:06 | #


Ce qui donne à ton doigt le temps de de relever de la touche
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Ne0tux Hors ligne Membre d'honneur Points: 3525 Défis: 265 Message

Citer : Posté le 18/06/2018 13:42 | #


A titre personnel je préfère mettre la boucle suivante à la place de cette boucle For :

While Getkey
WhileEnd


Ce qui veut littéralement dire : tant qu'il y a un appui sur une touche, on attend. Dès qu'il n'y a plus d'appui sur une touche, on passe à la suite du programme.

Ainsi j'utilise souvent ce genre de sous-programme pour détecter tout nouvel appui sur n'importe quelle touche, tout en m'assurant qu'il ne s'agit pas d'un appui involontaire :

While Getkey
WhileEnd
Do
LpWhile Not Getkey

Mes principaux jeux : Ice Slider - CloneLab - Arkenstone

La Planète Casio est accueillante : n'hésite pas à t'inscrire pour laisser un message ou partager tes créations !
Alex BasicC Hors ligne Ancien modérateur Points: 1734 Défis: 83 Message

Citer : Posté le 18/06/2018 13:48 | #


C'est très élégant comme solution,
Je regrette de pas y avoir pensé à l'époque
Drak Hors ligne Rédacteur Points: 1925 Défis: 40 Message

Citer : Posté le 18/06/2018 15:24 | #


C'est propre et élégant, comme tu le dis. Merci de nous faire part de cette technique très clean et bien écrite, puisque j'ai toujours trouvé ça dégueu de faire une boucle For dans le vide.
Eon the Dragon : version 1.2
Let's have a look!
Marre de ces RPGs qui t'imposent des classes, des compétences et des sorts ? Crée tes propres capacités sur Eon the Dragon ! Des monstres, des dragons et des combats aussi épiques que difficiles t'attendent !
Un RPG unique et immense t'attend ! Joue dès maintenant à Aventura, le Royaume Poudingue !
Vous aussi, soyez swag et rejoignez Planète Casio !

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 284 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd