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 :

Insérer une image ..


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 91
    Par défaut Insérer une image ..
    bonjour,
    Je travaille sur une application, et je voudrais insérer une photo pour chaque employé.
    Je pense que ce traitement est toujours le même ..
    Est-ce-qu'il faut créer sur la base de donnée un champ photo qui contient le chemin de l'image ?

    J'ai déjà le code qui permet d'ajouter une photo a partir d'un fichier existant sur l'ordinateur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            Dim OpenFileDialog As New OpenFileDialog
            If OpenFileDialog.ShowDialog = Windows.Forms.DialogResult.OK Then
                Me.PictureBox3.ImageLocation = OpenFileDialog.FileName
            End If
    Est-ce-que quelqu'un pourrai m'aider en ce qui concerne le code (en VB.NET) qui permet d'insérer une photo ?
    Mercii d'avance ..

  2. #2
    Membre confirmé
    Profil pro
    Développeur Java
    Inscrit en
    Août 2008
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Août 2008
    Messages : 176
    Par défaut exemple en c#
    vous pouvez crée dans ta base de donnée un champ de type image et pour l'enregistrement dans la base de donnée vous utilisez un memoryStream :


    voici un exemple de code en c# qui explique ce procéder :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Byte[] bytImage = null;
                    if (pictureBoxAticle.Image != null)
                    {
                        MemoryStream mstImage = new MemoryStream();
                        pictureBoxAticle.Image.Save(mstImage, System.Drawing.Imaging.ImageFormat.Jpeg);
                        bytImage = mstImage.GetBuffer();
                    }
    en faite bytImage c'est la valeur qui sera enregister dans la base de donnée (une request insert ou update par exemple)

    le pictureBox contient l'image lu a partir de disque


    j'espère que cela vous aide un peu

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 91
    Par défaut
    Je développe mon application à l'aide de VB.net ..
    Mais bon, mercii quand même ..

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 202
    Par défaut
    vb.net et c# sont similaires

    je traduis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    dim bytImage  as Byte()
    if pictureBoxAticle.Image isnot nothing then
      dim mstImage  as new MemoryStream
      pictureBoxAticle.Image.Save(mstImage, System.Drawing.Imaging.ImageFormat.Jpeg);
      bytImage = mstImage.GetBuffer();
    end if
    j'ajouterais que pour sql server il est conseillé de faire un champ de type varbinary(max) pour stocker les images (ca stocke les octets)

    le code ci dessus transforme l'image en octets
    il est ensuite possible de transformer les octets en image

    pour l'insertion dans la base, il faut utiliser les dbparameters et mettre le tableau d'octets dans le paramètre


    ou sinon stocker les chemins dans un type varchar
    m'enfin si ta base de données peut etre accéder depuis plusieurs postes, les chemins ca n'ira pas !
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 91
    Par défaut
    Donc mon champ image dois être de type varbinary.
    Et puis pour le code que vous avez mis? ça dois être lié au bouton qui assure l'ajout de l'image ?!
    Et qu'est-ce-qui doit être changé ?

  6. #6
    Membre confirmé
    Profil pro
    Développeur Java
    Inscrit en
    Août 2008
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Août 2008
    Messages : 176
    Par défaut
    Citation Envoyé par zouzou_18 Voir le message
    Donc mon champ image dois être de type varbinary.
    je crois qu'il existe le type image dans sql serveur

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 19/11/2004, 08h54
  2. [CR] insérer une image paramétrer dans une étiquette
    Par yoyothebest dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 22/08/2004, 11h58
  3. [GNU Pascal] [GRX] Insérer une image
    Par the_guitariste dans le forum Autres IDE
    Réponses: 5
    Dernier message: 28/04/2004, 18h24
  4. [Crystal Reports 9] comment insérer une image dans Détails
    Par VVE dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 22/10/2003, 17h06
  5. [CR7] Insérer une image dynamiquement
    Par yoloosis dans le forum SAP Crystal Reports
    Réponses: 12
    Dernier message: 28/07/2003, 09h54

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