Objet au hasard

Résolu
Signaler
Messages postés
48
Date d'inscription
mercredi 21 septembre 2005
Statut
Membre
Dernière intervention
20 décembre 2005
-
Messages postés
48
Date d'inscription
mercredi 21 septembre 2005
Statut
Membre
Dernière intervention
20 décembre 2005
-
comment on fait pour que l'ordinateur choisisse au hasard un objet entre 2

ex:

j'ai un bouton : cmdgo
une boîte d'image : img1
et une autre boîte d'image : img2

et je veux que lorsque je clique sur le bouton, une des 2 images, au hasard, aparaîssent.
comment?

P.s. allez PCPT tu est capable

9 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
Plusieurs choses :

- Récupérer un n° au hasard :
Si tu avais chargé des sources de jeu de dés, tu aurais trouvé cette fonction : Rnd :
Rnd() fournit un chiffre à virgule entre 0 et 1
Choix = Int(Rnd() * 2) te fournira la valeur 1 ou 2
Il faudra penser à mettre une instruction Randomize dans ton Form_Load : ça ... mélange les chiffres, lol

- Montrer et cacher les images :
If Choix = 1 Then
Image1.Visible = True
Image2.Visible = False
Else
Image1.Visible = False
Image2.Visible = True
End If
Il faudra penser à positionner les deux images au même endroit, l'une sur l'autre

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
3
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
49
salut,
tu peux.


Option Explicit
'
Private Sub Form_Load()
Randomize
End Sub
'
Private Sub Command1_Click()
Dim iResult As Integer: iResult = Rnd (1)
img1.Visible = CBool(iResult)
img2.Visible = Not img1.Visible
End Sub


<SMALL> Coloration syntaxique automatique [AFCK]</SMALL>


PCPT [AFCK]
3
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
49
re,

"mets des remaques prochiaine SVP fois car je suis "
(çà incite à répondre)


' oblige de déclarer les variables
Option Explicit
'
Private Sub Form_Load()
' réinitialise Timer pour le Rnd.
' comme Jack l'a dit, Rnd sort des suites différentes, mais se réfère
' à l'heure de démarrage du PC.
' autrement dit, sans cette init, tu auras toujours les mêmes suites
' jusqu'au prochain reboot. très génant pour des lancés de
' dés vraiment sensés être vraiment aléatoires
Randomize
End Sub
'
Private Sub Command1_Click()
'déclare le résultat
Dim iResult As Integer

'génère le résultat. 0 ou 1
iResult = Rnd (1)

'CBool() va convertir en booléen '0 Faux, 1 Vrai
'img1.visible sera donc la conversion, donc vrai ou faux
img1.Visible = CBool(iResult)

'img2.visible reçoit l'opposé de img1.
'donc si img1 est visible, img2 ne le sera pas, et vice-versa
img2.Visible = Not img1.Visible
End Sub


<SMALL> Coloration syntaxique automatique [AFCK]</SMALL>


pour "Coloration....", je l'ai pris sur.... mon gentil disque dur. un de mes petits utilitaires bien pratique...
PCPT [AFCK]
3
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
49
salut,
bah Jack m'a l'air d'avoir tout expliqué ;)
ps : PCPT est en grêve pour les Topics sans "Bonjour Merci" spontanés !
PCPT [AFCK]
0
Messages postés
48
Date d'inscription
mercredi 21 septembre 2005
Statut
Membre
Dernière intervention
20 décembre 2005

ouin je connaissaient cette méthode mais je voulais savoir si un espece de
rnd(img1 & img2).visible=true existait.

Merci
0
Messages postés
48
Date d'inscription
mercredi 21 septembre 2005
Statut
Membre
Dernière intervention
20 décembre 2005

bojours,
hein????? mets des remaques prochiaine fois car je suis plus du style de comprendre que de copier-coller et on n'y pense plus, mais ça a l'air de marcher

P.S. où est-ce que tu as pris cette "Coloration syntaxique automatique"
0
Messages postés
48
Date d'inscription
mercredi 21 septembre 2005
Statut
Membre
Dernière intervention
20 décembre 2005

salut,
merci beaucoup, finalement c'était rienque le "img2.Visible = Not img1.Visible " que je n'avais pas compris et le svp je l'avais marquer au début mais j'ai du l'effacer pendant que je modifiais mon messages car il était incompréhensible
0
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
49
ok. bah pareil, prochaine fois, détaille ce sur quoi tu bloques, çà m'évitera de taper un roman ;)
++
PCPT [AFCK]
0
Messages postés
48
Date d'inscription
mercredi 21 septembre 2005
Statut
Membre
Dernière intervention
20 décembre 2005

ouin j'essaie mais la je n'était pas sure d'où je bloquais car 3/4 du code je devinais ce que chaque "mots" voulait dire
0