Afficher plusieurs images [Résolu]

cs_powerwave 8 Messages postés jeudi 28 mai 2009Date d'inscription 20 août 2010 Dernière intervention - 10 févr. 2010 à 12:49 - Dernière réponse : NHenry 14179 Messages postés vendredi 14 mars 2003Date d'inscription 21 mai 2018 Dernière intervention
- 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
:(
Afficher la suite 

Votre réponse

4 réponses

NHenry 14179 Messages postés vendredi 14 mars 2003Date d'inscription 21 mai 2018 Dernière intervention - 10 févr. 2010 à 21:04
+3
Utile
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 ;)

Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de NHenry
NHenry 14179 Messages postés vendredi 14 mars 2003Date d'inscription 21 mai 2018 Dernière intervention - 11 févr. 2010 à 20:20
+3
Utile
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

Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de NHenry
cs_powerwave 8 Messages postés jeudi 28 mai 2009Date d'inscription 20 août 2010 Dernière intervention - 10 févr. 2010 à 23:59
0
Utile
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
Commenter la réponse de cs_powerwave
cs_powerwave 8 Messages postés jeudi 28 mai 2009Date d'inscription 20 août 2010 Dernière intervention - 11 févr. 2010 à 11:48
0
Utile
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 :)
Commenter la réponse de cs_powerwave

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.