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
@+
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
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.