lordfinalff
Messages postés84Date d'inscriptionvendredi 2 septembre 2005StatutMembreDernière intervention14 décembre 2009
-
22 juil. 2006 à 11:39
lordfinalff
Messages postés84Date d'inscriptionvendredi 2 septembre 2005StatutMembreDernière intervention14 décembre 2009
-
24 juil. 2006 à 08:24
Bon, je suis debutant, et j'essaye malgré tout de faire un jeu, mais je n'y arrive pas, enfin, presque pas !
Je voudrais l'avis de personne qui s'y connaissse bien en programmtion, si vous avez une image appelé image1, comment feriez vous pour la faire bouger a l'aide des fleche du clavier ?
TomIlliev
Messages postés86Date d'inscriptionvendredi 27 décembre 2002StatutMembreDernière intervention13 octobre 20162 22 juil. 2006 à 12:53
Salut
Dans La roitine Form_Load écrit Me.KeyPreview = True cela permet à la feuille de recevoir en priorité les événements du clavier
Dans la routine Form_KeyDown copie ce code
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Const PAS = 150 'Pas de DEPLACEMENT
With Image1
Select Case KeyCode
Case vbKeyDown
.Top = .Top + PAS
Case vbKeyUp
.Top = .Top - PAS
Case vbKeyLeft
.Left = .Left - PAS
Case vbKeyRight
.Left = .Left + PAS
End Select
'Limitatioon du DEPLACEMENT
If .Top + .Height < 0 Then .Top = ScaleHeight
If .Top - .Height > ScaleHeight Then .Top = 0
If .Left > ScaleWidth Then .Left = -.Width
If .Left + .Width < 0 Then .Left = ScaleWidth
End With
End Sub
lordfinalff
Messages postés84Date d'inscriptionvendredi 2 septembre 2005StatutMembreDernière intervention14 décembre 2009 22 juil. 2006 à 15:25
ok, cest a peu pres ce que je fais, mais, un truc que je n'arrive toujours pas a faire, c'est de combiné 2 touches ! Par exemple, haut et gauche, pour que limage parte en diagonale vers le haut gauche.
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 201934 23 juil. 2006 à 21:06
Salut,
les touches du clavier sont testées par un API, il faut donc un Timer pour les testées régulièrement,
la précision dépendra donc de l'interval du Timer, mais on ne pas descendre beaucoup en dessous de 10 ça servirait à rien.
on peut jouer aussi sur le pas pour augmenter la vitesse
c'est donc un compromis entre précision et vitesse.
l'avantage c'est qu'on ne passe pas par le buffer clavier, le temps de
répétition n'est pas pris en compte, c'est l'interval du Timer qui le
détermine.
tant que la touche est appuyée, elle répond, quand elle est relachée, elle ne répond plus
le reste c'est des calculs de limite entre le pas, la taille de l'image et celle de la Forme.