Background image dans form [Résolu]

papayou12 48 Messages postés mercredi 4 septembre 2013Date d'inscription 12 juin 2014 Dernière intervention - 12 avril 2014 à 11:55 - Dernière réponse :  Erlin
- 2 janv. 2015 à 13:13
Bonjour,
voila je suis bloqué j'ai un bouton pour sélectionner une image et le mettre en fond d'écran dans ma form1 puis le sauvegarder pour quand ont ré-ouvre l'application ont retrouve notre fond d'écran.
Sa marche le premier coup et aprés si on veut rechanger il me mes un message d'erreur :

\WindowsApplication1\WindowsApplication1\bin\Debug\logo.jpg', car il est en cours d'utilisation par un autre processus.

voila le code :

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        ChangeBackground()
end sub

Private Sub Label15_Click(sender As Object, e As EventArgs) Handles Label15.Click
        Dim Fich As OpenFileDialog = New OpenFileDialog
        If Fich.ShowDialog() Then
            Me.Text = Fich.FileName
            FileCopy(Fich.FileName, Application.StartupPath & "\logo.jpg")
            ChangeBackground()
        End If
    End Sub

    Private Sub ChangeBackground()
        If File.Exists(Application.StartupPath & "\logo.jpg") = True Then
            Me.BackgroundImage = Image.FromFile(Application.StartupPath & "\logo.jpg")
        End If
    End Sub

merci d'avance pour votre réponse
Afficher la suite 

Votre réponse

12 réponses

Whismeril 12127 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 22 octobre 2018 Dernière intervention - 12 avril 2014 à 12:00
0
Merci
Déplacé vers VB.Net, et ajout des balises de coloration syntaxique, voir ici
Commenter la réponse de Whismeril
Whismeril 12127 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 22 octobre 2018 Dernière intervention - 12 avril 2014 à 12:02
0
Merci
A quelle ligne as tu le message d'erreur?
Commenter la réponse de Whismeril
0
Merci
Merci d'avoir répondu j'ai l'erreur au niveau de filecopy
Commenter la réponse de papayou12
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - Modifié par ucfoutu le 12/04/2014 à 17:22
0
Merci
Bonjour,
Je ne connais personnellement rien à VB.Net ===>> Je consulte donc MSDN ===>>
http://msdn.microsoft.com/fr-fr/library/4sahykhd%28v=vs.110%29.aspx
===>> je lis ===>> j'y vois :

Le fichier reste verrouillé tant que Image n'a pas été supprimé.
J'en déduis qu'il me faut libérer l'image d'abord ===>
Comme je suis curieux, bien que non VB.Nettiste et ne connaissant rien à VB.Net, je regarde (toujours dans MSDN) ce qu'est la classe image ===>>
http://msdn.microsoft.com/fr-fr/library/system.drawing.image%28v=vs.110%29.aspx
===>> j'y vois une méthode Dispose quit dit : "Libère toutes les ressources utilisées par ce Image." ===>> j'ouvre cette rubrique ===>> j'arrive là ===>>
http://msdn.microsoft.com/fr-fr/library/8th8381z%28v=vs.110%29.aspx
je lis . Cela me parait maintenant très clair et compréhensible.
Voilà


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
Commenter la réponse de ucfoutu
papayou12 48 Messages postés mercredi 4 septembre 2013Date d'inscription 12 juin 2014 Dernière intervention - 12 avril 2014 à 17:35
0
Merci
c'est bien ça le problème je n'arrive pas as supprimer l'image au moment de l'ouverture de l'openfiledialogquand je click sur mon label
Commenter la réponse de papayou12
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 12 avril 2014 à 17:44
0
Merci
"c'est bien ça le problème je n'arrive pas as supprimer l'image au moment de l'ouverture de l'openfiledialogquand je click sur mon label"
Ah ?
Et avec quel code (je ne le vois pas) et où as-tu essayé de libérer cet objet image (apparemment Me.BackgroundImage) ?
Commenter la réponse de ucfoutu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 12 avril 2014 à 17:51
0
Merci
D'instinct (après lecture des liens MSDN que je t'ai invité à lire, puisque je ne connais rien à VB.Net) ===>>
 me.backgroundimage.dispose()

me.backgroundimage = nothing
avant même le openfiledialog
papayou12 48 Messages postés mercredi 4 septembre 2013Date d'inscription 12 juin 2014 Dernière intervention - 12 avril 2014 à 18:07
parfait merci sa fonctionner nikel
papayou12 48 Messages postés mercredi 4 septembre 2013Date d'inscription 12 juin 2014 Dernière intervention - 12 avril 2014 à 18:09
comment ont mais en résolu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 12 avril 2014 à 18:25
En cliquant sur le tag "RESOLU" au niveau de ton tout premier message.
Je viens de le faire pour toi.
papayou12 48 Messages postés mercredi 4 septembre 2013Date d'inscription 12 juin 2014 Dernière intervention - 12 avril 2014 à 18:54
ok merci
Merci pour le "Backgroundimage.dispose()". C'est exactement ce qu'il me manquait pour mon code j'avais le même type d'erreur.
Commenter la réponse de ucfoutu

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.