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 :

[VB 2010] Charger/effacer l'image de fond d'une form


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Février 2003
    Messages
    234
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 234
    Par défaut [VB 2010] Charger/effacer l'image de fond d'une form
    Bonjour à tous,
    Malgré plusieurs heures de recherche, je ne parviens pas à charger/effacer une image de fond dans mon formulaire.
    J'arrive bien à afficher une image en modifiant manuellement les propriété de ma form, mais pas en passant par le code.
    J'ai essayé le code ci-dessous, mais sans succès :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Me.BackgroundImage = "A.png"
    MsgBox("effacement de l'image")
    Me.BackgroundImage = ""
    L'erreur qui m'est affichée est la suivante :
    Erreur 1 Impossible de convertir une valeur de type 'String' en 'System.Drawing.Image'. D:\Projets Visual Basic\Etude projet\WindowsApplication1\WindowsApplication1\Form8.vb 291 30 WindowsApplication1


    Quelqu'un saurait comment faire ?
    Merci d'avance

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    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 204
    Par défaut
    "a.png" est un string, pas une image, c'est ce que te dis le message d'erreur
    ce n'est pas parce que pour toi un (ce) fichier est une image que c'est logique pour un programme, il faut décomposer tout ce que tu veux faire en choses logiques
    en tout cas une image n'est pas forcément un fichier (création ou autre)

    pour obtenir un objet image à partir du chemin (pas juste du nom à priori)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.backgroundimage = system.drawing.image.Fromfile("chemin ici")
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre Expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Par défaut
    Salut,

    la propriété BackgroundImage veut un objet et pas un string.

    Pour mettre une image il faut passer par la fonction static FromFile de la classe Image, exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this.BackgroundImage = Image.FromFile(@"C:\pix\img.jpg");
    Pour supprimer l'image de fond en cours il faut mettre la propriété à null, exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this.BackgroundImage = null;
    Bon dev.

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    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 204
    Par défaut
    (et null c'est Nothing en vb)

    j'ajouterais que si tu mets ton curseur sur BackgroundImage il doit y avoir un popup qui te dit qu'il faut un System.Drawing.Image
    s'il y avait écrit String alors tu aurais pu donner un string
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre très actif
    Inscrit en
    Février 2003
    Messages
    234
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 234
    Par défaut
    Impec, merci pour ces infos.
    Par contre cette backgroundimage n'est pas imprimable ?

  6. #6
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    WtF.....

    ...........please stop spoon feeding !!!

  7. #7
    Membre très actif
    Inscrit en
    Février 2003
    Messages
    234
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 234
    Par défaut
    Je veux dire simplement que lorsque je veux imprimer la form en question, l'image en background n'apparait pas.
    Comment y remédier ?

  8. #8
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Ah puis tiens une idée complètement en l'air,(ou bien est-ce complètement farfelue ?) non testée et que je ne testerai pas.

    1) Tu vas là et tu te fais un RichTextBox imprimable

    2) tu mets ton RichTextBox imprimable sur toute la surface de ta Form

    3) tu mets ton image dans ton RichTextBox Imprimable

    4) tu mets tous tes autres contrôles sur ton RichTextBox Imprimable

    5) tu fais imprimer ton RichTextBox imprimable

    6) tu ne viens pas te plaindre si cela ne marche pas, parce que j'ai bien dit que ce n'est pas testé et que je ne testerai pas.

    Parce que tes questions à rallonge, sans jamais dire c'est quoi ton vrai problème, c'est en train de ressembler au supplice de la goutte.

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

Discussions similaires

  1. [Lazarus] Image de fond dans une form
    Par camcam10 dans le forum Lazarus
    Réponses: 1
    Dernier message: 30/05/2011, 10h13
  2. Réponses: 6
    Dernier message: 21/09/2006, 18h33
  3. (EXCEL) Effacer des images gif insérées sur une feuille ?
    Par romo3 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/08/2005, 22h31
  4. Etirer une image de fond dans une cellule
    Par dreamanoir dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 13/07/2005, 15h39
  5. Réponses: 4
    Dernier message: 03/05/2005, 10h03

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