Dobbelspel, deel 2

Status
Niet open voor verdere reacties.

blue-one

Gebruiker
Lid geworden
18 apr 2005
Berichten
60
Ik heb de volgende code er al in staan:

Private Sub cmdMaakGetal_Click()

Dim intGetal(5) As Integer
Dim intHulp As Integer
For intHulp = 0 To 4
intGetal(intHulp) = (Rnd * 5) + 1
lblUitvoer(intHulp) = intGetal(intHulp)
Next intHulp

End Sub


Private Sub Form_Load()

Dim Hulp As Integer
For Hulp = 0 To 4
lblUitvoer(Hulp).BackColor = vbWhite
Next Hulp
End Sub

Private Sub lblUitvoer_Click(Index As Integer)
If lblUitvoer(Index).BackColor = vbWhite Then
lblUitvoer(Index).BackColor = vbYellow
Else
lblUitvoer(Index).BackColor = vbWhite
End If



End Sub


Als Backcolor van lbluitvoer white is, dan moet die bij cmdmaakgetal-gebruik wijzigen, maar als de backcolor van lblUitvoer Yellow is dan mag dat niet......
Ik denk dat het iets met If cmdMaakGetal = 1 Then lblUitvoer(Index).BackColor = vbRed or vbBlue moet zijn, maar het werkt niet zo :(

Ook moet ik ergens aangeven dat er maar drie keer geklikt kan worden, en dat dan de scores "af" zijn, hierna komt er een nieuwe cmdbutton, waarmee je de boel opnieuw start...
Ik dacht zelf aan een variable in het begin: General die neerkomt op: If cmdMaakGetal = 3 Then New = cmdStartopnieuw
De lbls worden na "de eerste ronde" blauw van kleur, zodat het visueel duidelijker wordt dat de boel klaar is..
 
Ha die blue-one,
het is vele malen makkelijker wanneer je gewoon verder gaat in je eerste thread.
 
Oeps.....
Dan sluit ik deze niet af, maar plaats ik, indien nodig, wel een vraag er onder ?!
 
Of je kopieerd het hele spul wat je hierboven hebt geplaatst even in je eerste thread.
En dan klik je bijn deze thread even op "vraag opgelost"

Fonz:thumb:
 
Beste blue-one,

Bestudeer maar eerst de onderstaande code, ik heb je code namelijk aangepast, zonder de 'Randomize' statement zal er nooit willekeurige getallen worden gegenereerd. De kleuren voor de labels komen later wel aanbod.

Code:
Private Sub cmdMaakGetal_Click()
   Dim intGetal(5) As Integer 'declaratie variabele voor willekeurig getal
   Dim intHulp As Integer
   Dim intHulp1 As Integer
   For intHulp = 0 To 5
       If intHulp = 0 Then
           Randomize
           intGetal(intHulp) = (Rnd * 5) + 1
           lblUitvoer(intHulp) = intGetal(intHulp)
           Else
           Do
              Randomize
              intGetal(intHulp) = (Rnd * 5) + 1
              For intHulp1 = 0 To intHulp
                 If intGetal(intHulp1) = intGetal(intHulp) Then
                    Exit For
                 End If
              Next intHulp1
           Loop Until intHulp1 = intHulp
       End If
       lblUitvoer(intHulp) = intGetal(intHulp)
   Next intHulp
End Sub

Dennis.

PS. Ik meen een tijd geleden een nog veel gecompliceerder opdracht voor iemand te hebben gemaakt. Maar dat programma bestaat hier op Helpmij niet meer.
 
Dennis erg bedankt!
Ik sluit deze wel, als opgelost, en hou mij bij de eerste thread....... (tweede voor de intimi ;) )
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan