J'ai des soucis avec Visual Basic !

Fermé
Prospy - 13 juin 2011 à 13:54
Popoï_ Messages postés 171 Date d'inscription mardi 21 juin 2011 Statut Membre Dernière intervention 8 mars 2019 - 23 juin 2011 à 11:16
Bonjour tout le monde
euh, je suis débutant en programmation VB, en fait je suis entrain de préparer un pti programme. L'affichage des informations doit se passer de manière aléatoire, il se trouve qu'à chaque fois que je clique sur le bouton qui doit lancer cette action, une information vient plusieurs fois avant d'arriver à dernière information. C'est à peu près comme ça :

Select case
Int(Rnd * 3), de Case 0 jusqu'a Case 2. Avec comme caption==>
Case 0 label1.caption = "Allo"
Case 1 label1.caption = "Bonjour"
Case 2 label1.caption = "Ici Prosper"
End Select
Le problème est que l'affichage de "Bonjour" peut s'éffectuer deux fois avant "Ici Prosper".
Que dois-je faire pour résoudre cela ?
Merci de m'aider.
Excellente journée....



A voir également:

2 réponses

BigFattyOne
14 juin 2011 à 01:09
Tu utilises random pour savoir dans quel élément de ton case tu vas aboutir, n'est-ce pas normal?
0
Bonjour BigFattyOne

Que dois-je utiliser alors ?
vous savez, je ne maîtrise pas tellement la programmation, en fait je ne connais pas assez de fonctions, merci de me guider !

Bonne journée !
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 302
14 juin 2011 à 14:10
Bonjour
a essayer
avant select case écris cette ligne
Randomize()

mais tu auras toujours 1/3 chance de tomber sur le m^me
0
Bonjour Micherl_m,
merci pour ton aide, mais le problème n'est encore pas résolu. Un message d'erreur s'affiche, un truc de ce genre "Compile error" "Expected:=". J'ai bien insérer Randomize() avant Select Case et même après.
Que dois-je faire encore ?
J'utilise Visual Basic 6 Enterprise...
Merci de m'aider !
A bientôt !
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 302
14 juin 2011 à 16:42
excuses moi;
essaies randomize sans les parenthèses
0
Popoï_ Messages postés 171 Date d'inscription mardi 21 juin 2011 Statut Membre Dernière intervention 8 mars 2019 75
23 juin 2011 à 11:16
Le "hasard" est calculé grâce à un algorithme très compliqué basé sur l'heure et la date, donc lorsque tu re-demandes un nombre au hasard, tu gardes la même heure et date: d'où l'intérêt d'utiliser Randomize pour réinitialiser l'heure utilisée pour "calculer le hasard". Personellement, je fais cette méthode pour ne pas avoir à retaper Randomize sans arrêt:

Dim Rnd As System.Random = New System.Random()

Dim Variable1 As Integer = Rnd.Next(1,100)
Dim Variable2 As Integer = Rnd.Next(3,5)

[...]
0