Dé électronique ou dé virtuel

Soyez le premier à donner votre avis sur cette source.

Vue 14 108 fois - Téléchargée 513 fois

Description

Il s'agit simplement d'un dé électronique

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
12
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
25 juin 2005

Merci pour le code c'est bien vu

@+
Messages postés
4030
Date d'inscription
mardi 13 mai 2003
Statut
Modérateur
Dernière intervention
23 décembre 2008
21
Public Function tempo(ByVal inc As Long)
For i = 1 To inc
Next i
End Function

Private Sub Command1_Click()
For i = 1 To 10000000 Step 500000
'[...]
Call tempo(i)
Next i
End Sub


La procédure tempo est un peu .... comment dire ... c'est un peu du n'importe quoi.
Tu disposes de la fonction Sleep qui te permet de faire une pause dans ton programme.
Ta fonction tempo prendra une éternité à s'exécuter sur un Pentium, sera rapide sur un P4, et sera désuète dans 2 ans ...


Pour l'affichage du dé, tu as des méthodes qui utilisent moins de tests, moins de lignes :

-----------------------------------------------------------

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Sub Command1_Click()
Dim dé1, dé2, j, i As Long

For i = 1 To 20
For j = 1 To 14
Shape1(j - 1).Visible = False
Next j
Randomize Timer
dé1 = Rnd * 6 + 1
dé2 = Rnd * 6 + 1
afficheDé Int(dé1), 1 ' Affiche le dé 1
afficheDé Int(dé2), 2 ' Affiche le dé 2
Sleep 100 ' Attend 0.1 seconde
Next i
End Sub

Private Sub afficheDé(iValue As Integer, numDé As Integer)
Dim DECALAGE As Long

DECALAGE = 7 * (numDé - 1) ' permet de sélectionner le dé
If iValue Mod 2 = 1 Then
Shape1(3 + DECALAGE).Visible = True
Shape1(3 + DECALAGE).Refresh
End If

If iValue > 1 Then
Shape1(0 + DECALAGE).Visible = True
Shape1(0 + DECALAGE).Refresh
Shape1(6 + DECALAGE).Visible = True
Shape1(6 + DECALAGE).Refresh
End If

If iValue > 3 Then
Shape1(1 + DECALAGE).Visible = True
Shape1(1 + DECALAGE).Refresh
Shape1(5 + DECALAGE).Visible = True
Shape1(5 + DECALAGE).Refresh
End If

If iValue = 6 Then
Shape1(2 + DECALAGE).Visible = True
Shape1(2 + DECALAGE).Refresh
Shape1(4 + DECALAGE).Visible = True
Shape1(4 + DECALAGE).Refresh
End If

End Sub
Messages postés
1488
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
3 décembre 2007
22
Evite d'utiliser des accents pour le nom de tes fichiers...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.