[Visual Basic 05] Comparer des PictureBox

Résolu
tatayoyo -  
 tatayoyo -
Bonjour,

J'ai un problème avec Visual Basic, je suis en train de créer un morpion de 3 lignes sur 3 colonnes. Je jeu se joue sur un seul PC à 2 joueur et on considère que c'est chacun son tour. Le joueur clique sur une case, une image s'affiche, il laisse la souris au joueur 2, qui clique sur une autre case, une autre image s'affiche et ainsi de suite jusqu'à ce qu' une ligne contienne les même images verticalement, horizontalement ou en diagonale (il n'y a que des images, une pour le joueur 1 et une pour le joueur 2). Algorithmiquement parlant, ça donne quelque chose comme ça :
si pictureBox1 est égal à pictureBox2 et pictureBox2 est égal à picture box3 alors
afficher "vous avez gagné"

Le problème est que je n'arrive pas à comparer les pictureBox

Pouvez-vous m'aider ?

Merci d'avance.
A voir également:

6 réponses

lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

tu mets les images dans le même répertoire et tu code en dur le contenu du PictureBox ensuite tu compares les chaînes (le chemin vers l'image)
Option Explicit
Dim spic1 As String, spic2 As String

Private Sub Command1_Click()
    If spic1 = spic2 Then
        MsgBox "ok"
    Else
        MsgBox "pas ok"
    End If
End Sub

Private Sub Form_Load()

    spic1 = "C:\photo.JPG"
    spic2 = "C:\photo.JPG"
    
    pic1.Picture = LoadPicture(spic1)
    pic2.Picture = LoadPicture(spic2)
End Sub
lami20j
0
tatayoyo
 
Salut

Merci pour ton conseil, j'ai aussi pensé pensé au tags sur les pictureBox non ? ensuite je compare si les tags sont identiques ?

C'est bien aussi non ?
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Re,

oui mais avec tag ce n'est pas evident.

Même si l'image est la même si les tag diffère alors ... et vice versa

lami20j
0
tatayoyo
 
Voici le code que j'utilise quand je clique sur un pictureBox. Il ne peut pas y avoir confusion dans les images car selon la valeur de joueur, la valeur sera différente.

Dim Joueur as boolean

Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click
If joueur = False Then
image1 = My.Resources.Angel
PictureBox1.Image = image1
PictureBox1.Tag = "J1"
joueur = True
Else
image1 = My.Resources.Jacques_Chirac
PictureBox1.Image = image1
PictureBox1.Tag = "J2"
joueur = False
End If

If PictureBox1.Tag = PictureBox2.Tag And PictureBox2.Tag = PictureBox3.Tag Or PictureBox1.Tag = PictureBox4.Tag And PictureBox4.Tag = PictureBox7.Tag Or PictureBox1.Tag = PictureBox5.Tag And PictureBox9.Tag Then
Gagnant()
End If
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Re,

ben, si ça marche alors le problème est résolu.


lami20j
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tatayoyo
 
oups désolé pour l'indentation...
0
tatayoyo
 
Merci pour ton aide

A+
0