1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
Private Sub InitializePictureBox(ByVal largeur As Integer)
Dim compte As Integer = 0
Dim rotation, differencex, differencey, largeur1, hauteur1, diviseur As Integer
Dim lalargeur, lahauteur As Integer
Dim ImageCarrerOriginal As Image
'récupère une image pour la séparer en 100 morceaux
ImageCarrerOriginal = Image.FromFile(adresseImage)
'mettre ici le code pour connaitre les dimensions de l'image
'boucle pour déposer les picturebox sur la form
For large As Integer = 1 To 10
For haute As Integer = 1 To 10
'compteur de picturebox
compte += 1
'Nouvelle PictureBox
maPicture = New PictureBox
' Positionne la picturebox et fixe la dimension.
Me.maPicture.Location = New System.Drawing.Point((largeur * large) + 325, (largeur * haute))
Me.maPicture.Size = New System.Drawing.Size(largeur, largeur)
Me.maPicture.TabStop = False
'Création d'un évènement click pour cette picturebox
AddHandler Me.maPicture.Click, AddressOf maPicture_Click
' Fixe le mode d'affichage.
Me.maPicture.SizeMode = PictureBoxSizeMode.Zoom
Me.maPicture.BorderStyle = BorderStyle.None
'ajoute un morceau de l'image originale a ce picturebox
Me.maPicture.Image = ImagePart(ImageCarrerOriginal, (diviseur * large) - diviseur, (diviseur * haute) - diviseur, diviseur, diviseur)
'tourne l'image, c'est un puzzle après tout
Randomize()
rotation = CInt(Int((3 * Rnd()) + 1))
Me.maPicture.Image.RotateFlip(rotation)
' Ajoute la picturebox à la form
Me.Controls.Add(Me.maPicture)
'Ici on associe la picturebox à un index dans la vaviable _morceaux
_morceaux.Add(compte, Me.maPicture)
Next
Next
End Sub |
Partager