[VB]Comment attendre un évènement avant de continuer l'exécution ? [Résolu]

neokizashi 6 Messages postés mercredi 30 janvier 2008Date d'inscription 17 juin 2015 Dernière intervention - 4 mai 2011 à 13:12 - Dernière réponse : cs_jopop 1540 Messages postés lundi 26 mai 2003Date d'inscription 1 août 2013 Dernière intervention
- 4 mai 2011 à 14:01
Salut tout le monde !

J'ai un petit soucis dans un programme que je dois concevoir pour mes cours, c'est un jeu bien connu
(que je ne citerai pas, pas de pub ) qu'il faut qu'on réalise.
Pour ma part, la création du jeu n'est pas un soucis, mais j'aimerai éviter les bugs que pourraient causer les joueurs.

Par exemple, au lancement du jeu, j'ai le plateau de jeu qui apparait et une autre fenêtre qui apparait en même temps
dans laquelle on demande le nom et image des utilisateurs.
Cependant on peut commencer à jouer sans avoir saisi les noms d'utilisateurs dans la deuxième fenêtre

Mon début de programme se déroule comme ceci :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Demande le nombre de joueur, leur nom et image
InitialisationJoueur.Show()
End Sub

J'aimerai donc pouvoir attendre la fin de initialisationJoueur (qui comprend un bouton "Commencer la partie")
pour afficher le plateau mais je ne point comment faire ...


Certains me diront peut-être que je pourrai plutôt faire appel à Form1 depuis InitialisationJoueur mais j'ai le même soucis dans une autre partie du code; j'ai mon code principal qui fait appel à un autre formulaire et j'aimerai attendre la fin de son exécution pour continuer (et c'est nécessaire, c'est pas juste un caprice ^^ )


Donc voilà, tout ce blabla pour vous demander comment je pourrai attendre un évènement spécial ?
Par exemple, attendre qu'on appuie sur mon merveilleux bouton "Commencer la partie"


Pour information, je code avec Visual Basic 2010 Express
Merci d'avoir lu tout ça et pis j'espère que vous pourrez m'aider
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
cs_jopop 1540 Messages postés lundi 26 mai 2003Date d'inscription 1 août 2013 Dernière intervention - 4 mai 2011 à 13:26
3
Merci
Salut,

je suppose que InitialisationJoueur est le nom d'une instance de classe dérivée de Form.
Le comportement que tu cherches s'appelle une boîte de dialogue modale : l'utilisateur n'a plus accès aux autres formulaires en arrière plan tant que celui-ci n'est pas fermé. C'est très simple à mettre en place : il suffit de remplacer InitialisationJoueur.Show par InitialisationJoueur.ShowDialog

Il faudra par contre bien vérifier les info saisies dans cette fenêtre, que l'utilisateur puisse pas "commencer la partie" avec le champ "nom" vide.

Merci cs_jopop 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 120 internautes ce mois-ci

Commenter la réponse de cs_jopop
neokizashi 6 Messages postés mercredi 30 janvier 2008Date d'inscription 17 juin 2015 Dernière intervention - 4 mai 2011 à 13:35
0
Merci
Aaah ça marche
Je pensais pas que ça serait aussi simple xD

Et sinon, pour le traitement des informations, j'avais déjà mis des noms par défaut si l'utilisateur ne mettait rien
donc pas de soucis à ce niveau là

Merci jopop pour ton aide (rapide et efficace en plus !)
Commenter la réponse de neokizashi
cs_jopop 1540 Messages postés lundi 26 mai 2003Date d'inscription 1 août 2013 Dernière intervention - 4 mai 2011 à 14:01
0
Merci
De rien pour l'aide ;)

Alors attention aux Dumby Users et aux chercheurs de poux : ils pourraient très bien supprimer le contenu de la zone de saisie avant de valider ^^
Commenter la réponse de cs_jopop

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.