IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Charger une image à partir d'une collection d'images


Sujet :

VB.NET

  1. #21
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    Essai de remplacer ta collection par une List(of string)



    Dim coll As New List(Of String)
    coll.Add("C:\Lignes3D.jpg")
    PictureBox1.Image = Drawing.Bitmap.FromFile(coll.Item(0))

  2. #22
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 559
    Points : 61
    Points
    61
    Par défaut
    JE VOUDRAIS savoir si on peut faire une collection d'objets image et les lire en les affichant

  3. #23
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 559
    Points : 61
    Points
    61
    Par défaut
    ça marche bien avec une liste, merci.
    Donc avec la classe collection on ne peut pas lire les objets images

  4. #24
    Membre averti
    Avatar de Psycadi
    Homme Profil pro
    Chef de projet - Expert en message box
    Inscrit en
    Juillet 2003
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet - Expert en message box

    Informations forums :
    Inscription : Juillet 2003
    Messages : 147
    Points : 364
    Points
    364
    Par défaut
    on doit pouvoir mais là, ce n'est pas l'image qui est stocké mais son chemin.

    Ce n'est pas vraiment la même chose.

  5. #25
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 559
    Points : 61
    Points
    61
    Par défaut
    ça marche pour 1 image mais avec une liste chargé et relue ça ne marche pas non plu

  6. #26
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 559
    Points : 61
    Points
    61
    Par défaut
    mais avec une liste de picturebox et relire une image de picturebox ça ne s'excute pas

  7. #27
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Peut tu remettre ton nouveau code, stp.

  8. #28
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 559
    Points : 61
    Points
    61
    Par défaut
    J'ai essayé pleins de solutions mais aucune n'a marché, je te met ma dernière solution

    pour charger la liste:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    coll1.Add(Me.PictureBox1.ToString())
    pour lire depuis la liste:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PictureBox1.Load(coll1.Item(0).ToString())

  9. #29
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Donc tu n'as pas touché à ton code suivant :
    Citation Envoyé par toutounesan Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
        Private Sub Button7_Click(ByVal sender As System.Object, 
                         _ByVal e As System.EventArgs) Handles Button7.Click
            If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
                PictureBox1.Load(OpenFileDialog1.FileName)
            End If
        End Sub
    Moi, j'aurai chargé les chemins des images dans la liste avant de les afficher ou alors tu les stockes dans une variable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    img = OpenFileDialog1.FileName

  10. #30
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 559
    Points : 61
    Points
    61
    Par défaut
    C'est bon, ça marche!

  11. #31
    Membre averti
    Profil pro
    Inscrit en
    Février 2010
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 291
    Points : 390
    Points
    390
    Par défaut
    Bonjour,

    C'est bon, ça marche!
    Ben il y en a qui vont être bien content ! Pour ceux que cela intéressent ça a l'avantage d'apporter une réponse claire.

    Pour faire une collection d'images il faut soit utiliser le contrôle imagelist quand on confond IHM et architecture objet, ou que l'on débute.
    Si par contre on veut une approche objet, on crée une collection d'images avec un system.generic.collection.list Of(Bitmap)
    http://msdn.microsoft.com/fr-fr/library/6sh2ey19.aspx

    et chaque élément de la collection sera affichable sur LE picturebox. Car entre une collection d'images et une collection de contrôle il y a une différence.

  12. #32
    Membre averti
    Profil pro
    Inscrit en
    Février 2010
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 291
    Points : 390
    Points
    390
    Par défaut
    Bonjour,

    Et si l'on veut être plus fin et gérer les ressources un peu mieux :

    Un objet métier regroupant se que l'on veut gérer via l'IHM

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    Public Class My_WorkObject
     
        Private mNom As String
        Public Property Nom() As String
            Get
                Return mNom
            End Get
            Set(ByVal value As String)
                mNom = value
            End Set
        End Property
     
     
        Private mAge As Integer
        Public Property Age() As Integer
            Get
                Return mAge
            End Get
            Set(ByVal value As Integer)
                mAge = value
            End Set
        End Property
     
     
        Private mNomFichierImage As String
        Public Property NomFichierImage() As String
            Get
                Return mNomFichierImage
            End Get
            Set(ByVal value As String)
                mNomFichierImage = value
            End Set
        End Property
     
     
        Private mMonBitmap As Bitmap
        Public Property MonBitmap() As Bitmap
            Get
                Return mMonBitmap
            End Get
            Set(ByVal value As Bitmap)
                mMonBitmap = value
            End Set
        End Property
     
        Public Sub New(ByVal nom As String, ByVal age As Integer, ByVal nomfichierimage As String)
            mNom = nom
            mAge = age
            mNomFichierImage = nomfichierimage
        End Sub
        'version 1
        Public Sub Affiche(ByVal pict As PictureBox)
            pict.Image = New Bitmap(NomFichierImage)
            pict.Refresh()
        End Sub
     
        'version 2
     
        Public Sub Instancie(ByVal pict As PictureBox)
     
            Using mMonBitmap As New Bitmap(mNomFichierImage)
     
                Dim e As Graphics
                e = pict.CreateGraphics
                e.DrawImage(mMonBitmap, 0, 0)
     
            End Using
     
        End Sub
     
    End Class
    Un liste fortement typée de cet objet

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Public Class ListeMy_WorkObject
        Inherits System.Collections.Generic.LinkedList(Of My_WorkObject)
     
    End Class
    Que l'on utilise comme suit (par exemple):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Dim MyListe As New ListeMy_WorkObject
            Dim i As Integer = 0
     
            For i = 0 To 3
                Dim myWO As New My_WorkObject("Nom" & i, i, "C:\myimage" & i & ".jpg")
                MyListe.AddLast(myWO)
            Next
     
            MyListe(1).Affiche(PictureBox1)
     
        End Sub

  13. #33
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 559
    Points : 61
    Points
    61
    Par défaut
    par contre je voudrais faire, en fait, une collection d'images et pas une collection de leurs adresse de provenance

  14. #34
    Membre averti
    Profil pro
    Inscrit en
    Février 2010
    Messages
    291
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 291
    Points : 390
    Points
    390
    Par défaut
    Bonjour,

    par contre je voudrais faire, en fait, une collection d'images et pas une collection de leurs adresse de provenance
    Sérieusement vous lisez les messages postés ??????????????

  15. #35
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    559
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 559
    Points : 61
    Points
    61
    Par défaut
    oui mais dans ta dernière réponse tu sauvegardes les images dans les images

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/03/2010, 15h43
  2. [Batch] Créer une chaine à partir d'une variable et d'une autre chaine
    Par mlle lain dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 10/11/2009, 16h26
  3. Saisir une image à partir d'une photo ou d'une vidéo
    Par lohengrin56 dans le forum Flash/Flex
    Réponses: 0
    Dernier message: 07/07/2009, 16h17
  4. Réponses: 2
    Dernier message: 05/01/2009, 12h45
  5. Réponses: 5
    Dernier message: 22/05/2008, 14h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo