Afficher picturebox récupérée d'un autre formulaire fermé

Résolu
paulhochon
Messages postés
35
Date d'inscription
samedi 15 décembre 2018
Statut
Membre
Dernière intervention
15 janvier 2019
- 15 déc. 2018 à 15:45
cs_Le Pivert
Messages postés
7751
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
24 mai 2022
- 17 déc. 2018 à 12:00
Bonjour,
je voudrais récupérer une image d'un picturebox d'un formulaire fermé et le faire s'afficher dans un second à son ouverture (pour le mettre en fond dans un picturebox).
Si quelqu'un a une idée.

Merci

8 réponses

Whismeril
Messages postés
17339
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
596
15 déc. 2018 à 15:52
Bonjour

quand tu fermes le formulaire 1, tu enregistres l'image quelques part.
Quand tu ouvres le formulaire 2, tu lui transmet cette image.

Voir
https://codes-sources.commentcamarche.net/faq/11107-interactions-entre-form-en-net-c-et-vb-net
0
paulhochon
Messages postés
35
Date d'inscription
samedi 15 décembre 2018
Statut
Membre
Dernière intervention
15 janvier 2019

15 déc. 2018 à 16:31
Merci, c'est ce que je pensais, mais tu as vu mon autre post sur lequel j'ai un soucis de plantage.

Comment être sur de pouvoir écrire dans un répertoire accessible sur le DDur du pc ou l'application va s'installée?
0
Whismeril
Messages postés
17339
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
596
15 déc. 2018 à 17:00
Tu n'es pas obligé d'enregistrer cette image sur le disque, ça peut être dans une variable

Formulaire 1 avec variable Bitmap
Formulaire 2 retourne Bitmap à F1
Formulaire 3 reçoit Bitmap de F1

Lit le tuto, il montre plusieurs façons de faire
0
paulhochon
Messages postés
35
Date d'inscription
samedi 15 décembre 2018
Statut
Membre
Dernière intervention
15 janvier 2019

Modifié le 15 déc. 2018 à 17:46
ok je vais étudier cela.
Merci pour ton aide...j'en aurais surement encore besoin ;)

Sais-tu pourquoi la méthode ci-dessous fonctionne avec l'intervention d'un "clic" et si je fais la meme chose a l'ouverture de mon form, cela ne fonctionne pas ?

Private Sub BtnancLogo_Click(sender As Object, e As EventArgs) Handles BtnancLogo.Click
        Dim file_name As String = Application.ExecutablePath
        file_name = file_name.Substring(0, file_name.LastIndexOf("\bin")) &
        "\LogoSociete."
        PicBoxLogo.Image = Image.FromFile(file_name & "bmp")

    End Sub


 Private Sub FormDevis_Load(sender As Object, e As EventArgs) Handles Me.Load
        Dim file_name As String = Application.ExecutablePath
        file_name = file_name.Substring(0, file_name.LastIndexOf("\bin")) &
        "\LogoSociete."
        PicBoxLogo2.Image = Image.FromFile(file_name & "bmp")
    End Sub
0
Whismeril
Messages postés
17339
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
596
15 déc. 2018 à 20:19
Essaye au Shown plutôt qu’au load, sans certitude je ne fais plus de winform depuis quelques années
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
paulhochon
Messages postés
35
Date d'inscription
samedi 15 décembre 2018
Statut
Membre
Dernière intervention
15 janvier 2019

16 déc. 2018 à 16:16
Avec shown cela ne fonctionne pas mieux!
0
cs_Le Pivert
Messages postés
7751
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
24 mai 2022
129
16 déc. 2018 à 17:34
Bonjour,

comme ceci:

Public Class Form1
    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        Dim file_name As String = Application.StartupPath  'chemin du dossier de l'exe
        PictureBox1.Image = Image.FromFile(file_name & "\Guadeloupe 189.jpg")  'adapter le nom de l'image avec l'extension
    End Sub
    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        Dim file_name As String = Application.StartupPath  'chemin du dossier de l'exe
        PictureBox1.Image = Image.FromFile(file_name & "\Guadeloupe 189.jpg")  'adapter le nom de l'image avec l'extension
    End Sub
End Class

0
paulhochon
Messages postés
35
Date d'inscription
samedi 15 décembre 2018
Statut
Membre
Dernière intervention
15 janvier 2019

17 déc. 2018 à 09:18
J'ai mis un événement "got focus" et cela à l'air de fonctionner.

Y a t'il une différence fondamentale entre StartupPath et ExecutablePath?
0
cs_Le Pivert
Messages postés
7751
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
24 mai 2022
129
Modifié le 17 déc. 2018 à 10:58
Application.StartupPath = chemin du dossier où se trouve l’exécutable


Application. ExecutablePath = chemin de l’exécutable

une petite astuce, quand tu as un doute tu mets ceci:

MsgBox(Application.StartupPath)


MsgBox(Application.ExecutablePath)


cela te renseigne tout de suite

@+
0
paulhochon
Messages postés
35
Date d'inscription
samedi 15 décembre 2018
Statut
Membre
Dernière intervention
15 janvier 2019

Modifié le 17 déc. 2018 à 11:45
Nickel! Merci à toi.

Sinon à quoi sert le "load" alors puisqu'il ne lance pas ma méthode?

D'ailleurs j'ai déjà remarqué cela plusieurs fois un "buttonclick" fonctionne à tous les coups mais pas un "load" de la form !!
0
cs_Le Pivert
Messages postés
7751
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
24 mai 2022
129
Modifié le 17 déc. 2018 à 12:01
Je n'ai pas ce problème!

Afficher picturebox récupérée d'un autre formulaire fermé

pour répondre à la question initiale, voir ceci:

https://plasserre.developpez.com/cours/vb-net/?page=windows-forms1#LX-C

@+
0