Systhéme de sélection aléatoire dans une ListBox VB.net [Résolu/Fermé]

Signaler
Messages postés
156
Date d'inscription
samedi 31 octobre 2015
Statut
Membre
Dernière intervention
3 juillet 2018
-
Messages postés
14768
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
20 septembre 2020
-
Bonjour,

J'aimerais faire un système de sélection aléatoire dans une listbox qui ne comporte que plusieurs Items du type Text, j'aimerais que lorsque l'utilisateur clique sur un bouton, le text d'un label soit un des mots se trouvant dans la listbox.

P.S. l'utilisateur pourrait rajouter des Items "text" dans la listbox, ( >juste si le code doit changer...<)

Merci d'avoir pris le temps de lire
Cordialement VANAUR

3 réponses

Messages postés
14723
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
17 septembre 2020
253
Quelle version de VB ?
VB.NET : Math.Random
Messages postés
156
Date d'inscription
samedi 31 octobre 2015
Statut
Membre
Dernière intervention
3 juillet 2018
4
Bonjour, je l'ai dis dans le titre : VB.net
;)
Messages postés
14723
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
17 septembre 2020
253
As-tu regardé ma suggestion ?
Qu'as-tu tenté ?
Messages postés
14768
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
20 septembre 2020
575 >
Messages postés
14723
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
17 septembre 2020

Salut, en tout cas il n'a pas cherché sur le forum, une question similaire, sur laquelle nous sommes intervenus tous les 2, a trouvé réponse à peine quelques heures avant sa question.....
https://forums.commentcamarche.net/forum/affich-33720638-code-pour-choix-aleatoire-pour-virtual-basic#3
Messages postés
156
Date d'inscription
samedi 31 octobre 2015
Statut
Membre
Dernière intervention
3 juillet 2018
4
Bonjour à vous deux,

oui, j'ai essayer d'utiliser Radom, en regardant une vidéo, et en lisant le problème que vous m'avez donner mais, cela ne correspond pas à ce que je voudrais faire sur mon application, c'est beaucoup plus compliquer que ca, mais j'ai simplifier ma question...

Pour un système de sélection aléatoire, je connais un code qui utilise
Select Case

mais, je ne sais pas comment faire pour l'appliquer à une ListBox pour que un des mots (Item) étant contenu dans celle-ci sois le text d'un label aléatoirement "choisi par l'ordinateur" lorsque l'on appuie sur un bouton.

Je n'ai pas de code à vous proposer car, c'est cela que je cherches...

Désoler, je ne sais pas bien m'exprimer pour poser une question, ou pour donner une réponse... :( vous me l'avez souvent dit d’ailleurs XD

Cordialement VANAUR


Messages postés
14768
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
20 septembre 2020
575
Hum Hum et dans la discussion que je t'ai mis en lien, je parle d'une autre, es tu allé voir?
Messages postés
156
Date d'inscription
samedi 31 octobre 2015
Statut
Membre
Dernière intervention
3 juillet 2018
4
Oui, j'y ais prêter attention, mais la dernière question que je me pose, est comment l'appliquer à une listbox, j'ai essayer avec select case random, avec des images dans les ressources, mais dans la listbox, il n'est alors pas possible d'ajouter des items par l'utilisateur ?

P.S. Merci, ces liens m'ont indiquer de meilleurs chemins
Messages postés
14768
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
20 septembre 2020
575
Vite fait un truc comme ça
       Dim mesMots As List(Of String) = "Coucou;Hello;Bonjour;Ohayo Gozaimasu;Guten Tag;Hola".Split(";"c).ToList()
        ListBox1.DataSource = mesMots 'binde le contenu la liste sur le controle

        'Ajout d'un mot
        mesMots.Add("Salam Aleykoum")

        Dim rnd As New Random()

        'Tirage avec doublons autorisés
        'à mettre dans ton bouton
        textBox1.Text = mesMots(rnd.Next(mesMots.Count))


        'Tirage sans doublons
        Dim mesPossibles As List(Of String) = mesMots.ToList() 'même contenu, référence différente
        'à mettre dans ton bouton
        Dim index As Integer = rnd.Next(mesPossibles.Count)
        textBox1.Text = mesPossibles(index)
        mesPossibles.RemoveAt(index)

Messages postés
156
Date d'inscription
samedi 31 octobre 2015
Statut
Membre
Dernière intervention
3 juillet 2018
4
Merci :D

c'est exactement ce dont j'avais besoin, j'ai appliquer mon code à l'application, et tout fonctionne parfaitement ;)

Cordialement VANAUR
Messages postés
14768
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
20 septembre 2020
575
De rien, si ça te convient, passe le sujet resolu