Afficher plusieurs images

Résolu
cs_powerwave Messages postés 8 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 20 août 2010 - 10 févr. 2010 à 12:49
NHenry Messages postés 15116 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 9 mai 2024 - 11 févr. 2010 à 20:20
Bonjour,

est ce que c'est possible d'afficher plusieurs images sur un windows form en miniatures, et en cliquant dessus, sa s'ouvre dans une autre fenétre ???

ou juste une zone d'image fixe, et naviguer avec des boutons (image suivante, précédente...) ????

j'ai déja éssayé avec un picturebox, mais j'arrive pas a changer l'image, elle reste statique, j'arrive pas à jouer sur les index...

svp aidez moi, j'utilise visual studio 2008 (WindowsApplication)
merci d'avance
:(

4 réponses

NHenry Messages postés 15116 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 9 mai 2024 159
10 févr. 2010 à 21:04
Bonjour,

"est ce que c'est possible d'afficher plusieurs images sur un windows form en miniatures, et en cliquant dessus, sa s'ouvre dans une autre fenétre ??? "
Oui.

Plusieurs PictureBox ou alors en manipulant le dessin d'une zone graphique par exemple.

Pour le clic, tu as le MouseUp et Down pour connaitre le point cliqué.

"j'ai déja éssayé avec un picturebox, mais j'arrive pas a changer l'image, elle reste statique, j'arrive pas à jouer sur les index... "
En .NET, il y a pas d'index ...
Si ton code pose pb, il faut nous en montrer un minimum pour voie pourquoi ;)

3
NHenry Messages postés 15116 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 9 mai 2024 159
11 févr. 2010 à 20:20
Bonsoir,

Dans ce cas, préfère faire un contrôle personnalisé qui, lui, gèrera les PictureBox (par des évènements pour les clics).
Ensuite, préfère utiliser la création dynamique des contrôles, ça sera plus propre et largement plus maintenable.
Pour ce dernier point, regarde comment c'est fait dans le fichier :
NomForm.Designer.VB

3
cs_powerwave Messages postés 8 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 20 août 2010
10 févr. 2010 à 23:59
Merci bien pour ta réponse, sa m'a beaucoup aidé :P, ça faisait 3 jours que je galère de forum à un autre, et personne ne m'avait répondu o_O"

pour tout mettre sur un picturebox et naviguer entre les images, j'ai utilisé une imagelist avec, la seule contrainte c'est la résolution, le maximum est de 256;256

exemple:


Module Module1
Public P As Integer
Public max1 As Integer = Form1.ImageList1.Images.Count - 1
End Module

Public Class Form1

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
PictureBox1.Image = ImageList1.Images(0)
End Sub

Private Sub Suivante_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If P < max1 Then
P = P + 1
PictureBox1.Image = ImageList1.Images(P)
End If
End Sub

Private Sub Précédente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
If P > 0 Then
P = P - 1
PictureBox1.Image = ImageList1.Images(P)
End If
End Sub
End Class





en ce qui concerne les miniatures, ça marche tout à fait comme tu l'as décrit, un picturebox et PictureBox1_MouseDoubleClick(...) Handles PictureBox1.MouseDoubleClick
Form2.Show()
End Sub


ce qui est bien avec,c'est que on a la résolution qu'on désire, par contre j'ai presque 120 images à intégrer :s, ça va me prendre des jours si je le fais manuellement
je suppose qu'il faut créer une classe qui s'en-chargera ou une function peut être, mais comme je suis un noob, je suis obligé de me contenter du 256x256

En tout cas merci encore
0
cs_powerwave Messages postés 8 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 20 août 2010
11 févr. 2010 à 11:48
mais mdrrrrrrr, c tout con enfaite

Private Sub PB_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox1.DoubleClick, PictureBox2.DoubleClick, PictureBox3.DoubleClick, PictureBox4.DoubleClick, PictureBox5.DoubleClick, PictureBox6.DoubleClick, ...
Form2.PictureBox1.Image = sender.image
Form2.Show()
End Sub


il reste juste la partie de l'affectation des images aux pictureboxs sur le premier form à faire en manuel :)
0
Rejoignez-nous