[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.

6 réponses

  1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    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
  2. 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
  3. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    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
  4. 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
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      Re,

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


      lami20j
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. tatayoyo
     
    oups désolé pour l'indentation...
    0