Clic = affichage d'image [Résolu]

Signaler
Messages postés
10
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
18 octobre 2007
-
Messages postés
10
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
18 octobre 2007
-
Bonjour,
Déjà, je vous avertis, je suis un novice en programmation
J'ai un projet à faire en VB ( visual basic express 2005 ).
Quand je rentre "dupont pierre" dans le textbox1 et que je clic (button1), dans le textbox2 appelé nom : il y marqué dupont. Dans le textbox3 appelé prénom : il y a marqué pierre etc.
Mon probleme est que je voudrais aussi qu'il y ait une picturebox et que celle-ci affiche l'image de dupont pierre (de plus l'image est sur le reseau "\\domaine\photos\pierredupont.jpg"
Quelle est la formule que je dois rentrer ?
Merci d'avance

14 réponses

Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
13
Salut,

Déjà il faut faire un test pour vérifier le nom et le prénom pour que cela corresponde à l'image type de la personne....Ensuite utilise la propriété : LoadPicture de la PicturBox pour affichée l'image correspondante à ta personne...

 ' Test dans ton Button1
  If TextBox1.Text = "dupont pierre" then
      PictureBox1.Image = LoadPicture(\\domaine\photos\pierredupont.jpg)
Else
     MsgBox "Image indisponible....!"
End if

Par contre dans le test, attention aux majuscules et minuscules, il faut que cela soit identique, pour cela utilise Ucase et Lcase ou : Text1.Text = StrConv(Text1.Text, vbProperCase)

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
56
Salut,
Regarde ce que fait ce code.

;   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button1.Click
        'ATTENTION il faut que le nom soit mis avant le prénom
        'dans la textbox source
        Dim PosEspace As Integer = TextBox1.Text.IndexOf(" ")
        Dim nom As String = TextBox1.Text.Substring(0, PosEspace)
        Dim prenom As String = TextBox1.Text.Substring(PosEspace + 1)
        Dim cheminphoto As String = "\\domain\photos\" & _
          prenom.ToLower & nom.ToLower & ".jpg"
        'on stocke le nom dans textbox 2
        TextBox2.Text = nom
        'on stocke le prenom dans textbox 3
        TextBox3.Text = prenom

        'Si les images sont toujours nomme par prenomnom.jgp on peut faire
        'PictureBox1.Image = Image.FromFile("\\domaine\photos\" & _
          prenom.ToLower & nom.ToLower & ".jpg")
        If System.IO.File.Exists(cheminphoto) Then PictureBox1.Image = _
          Image.FromFile(cheminphoto)

    End Sub, ----
(Coloration syntaxique automatique par Kenji)

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
56
Salut,
POUR TES QUESTIONS FUTURES:penses à poster dans la section qui convient à ton problème. tu le dis toi même tu dois travailler sous VB EXpress 2005, il n'a rien à voir avec VB6. la section correcte est: [infomsg.aspx Thèmes]

/ [infomsgf_VB-NET-VB-2005_40.aspx VB.NET et VB 2005] / [infomsgt_DIVERS_221.aspx Divers] / [infomsgt_DEBUTANTS_227.aspx Débutants]

Passons plutot à ton problème.

ce qu'il te faut savoir (regarder les sources de ce site) c'est:
- recherche un espace dans une chaine
- concatener deux cahine de caractere
- charger dynamiquement une image

Bref en cherchant un peu tu devrais y arriver sans grosses difficultés

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
13
Oups...petit oubli...PictureBox1.Image = LoadPicture("\\domaine\photos\pierredupont.jpg")

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
10
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
18 octobre 2007

Désolé Jrivet pour le message qui n'est pas à sa place

Pour tes explications... euh... je débute je n'ai comme connaissance que les livres que j'achète ... C'est un peu du chinois pour moi

Exploreur, merci beaucoup, je vais tester et vous tiens au courant
Messages postés
10
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
18 octobre 2007

Alors pour : Text1.Text = StrConv(Text1.Text, vbProperCase)

Génial ça marche, il me convertit le texte comme il faut !!

Pour :

If TextBox1.Text = "dupont pierre" then
      PictureBox1.Image = LoadPicture(\\domaine\photos\pierredupont.jpg)
Else
     MsgBox "Image indisponible....!"
End if

PictureBox1.Image = LoadPicture("\\domaine\photos\pierredupont.jpg")

Il me souligne "LoadPicture" en me stipulant que le nom loadpicture n'est pas déclaré
Tout comme domaine, photos, pierredupont.jpg...
Messages postés
10
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
18 octobre 2007

Pour etre clair, je dois créer un programme qui quand on rentre le nom d'une personne dans le Textbox1 et que l'on clic sur button1 on doit avoir dans le champ Textbox2 que le nom, dans Textbox3 que le prénom, Textbox3 le service etc et aussi voir apparaitre la photo de la personne qui se trouve sur le reseau

Alors moi j'avais fait ça :

TextBox1.Text = StrConv(TextBox1.Text, vbProperCase)


Dim Nom As String
Nom = Textbox1.Text
Nom = Nom.Replace("Samsa Renaud", "Samsa")

Dim Prenom As String
Prenom = Textbox1.Text
Prenom = Prenom.Replace("Samsa Renaud", "Renaud")

Dim Prenom As String
Service = Textbox1.Text
Service = Service.Replace("Samsa Renaud", "2600")


Dim N1 As String
N1 = Textbox1.Text
N1 = N1.Replace("Samsa Renaud", "Boss")

Dim Tel As String
Tel = Textbox1.Text
Tel = Tel.Replace("Samsa Renaud", "32.65")

TextBox2.Text = Nom
TextBox3.Text = Prenom
TextBox4.Text = Service
TextBox5.Text = N1
TextBox6.Text = Tel
Sachant que j'ai 650 personnes à rentrer... Je me doute que je n'ai pas pris la meilleur des solutions

Ensuite j'ai tout effacer et j'ai voulu rentrer ( en double clicant sur l'icone de clic) ce que tu m'as dit ( Jrivet )
et j'ai des messages d'erreurs.
dois je mettre le ";" au début ?
Si non il me met que "Private sub" est interprété comme la fin d'une méthode

Voilà, je vous remercie encore de votre soutient
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
13
Avec mes excuses :

PictureBox1.Picture = LoadPicture("\\domaine\photos\pierredupont.jpg")

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
10
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
18 octobre 2007

Ne t'excuses pas, tu m'aides, c'est déjà beaucoup :)

alors j'ai double clicker sur l'icone "button1"

Là j'ai collé :

If TextBox1.Text = "dupont pierre" then
      PictureBox1.Image = LoadPicture(\\domaine\photos\pierredupont.jpg)
Else
     MsgBox "Image indisponible....!"
End if

<strike>PictureBox1.Image = LoadPicture("\\domaine\photos\pierredupont.jpg")
</strike>PictureBox1.Picture = LoadPicture("\\domaine\photos\pierredupont.jpg")

Mais ça ne marche toujours pas  , il me met que :


PictureBox1.Picture : Picture n'est pas un membre de System.windows.Forms.Picturebox
LoadPicture : Le nom LoadPicture n'est pas déclaré
Le nom Domaine, photos et pierredupont.jpg n'est pas déclaré

Voilà, encore merci pour votre soutient ;)
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
13
Salut,

Si..si je m'excuse, parce que le code que je te donne c'est du VB6...La réponse est donnée par Jrivet(que je salue)...J'ai trop tendance à me dire qu'il y a toujours certaines ressemblance de code avec .net et Vb6, voilà pourquoi mes excuses envers toi et Jrivet que je doit "énerver"....

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
56
Re,

Est ce que le code que je propose à été testé ou pas?????
je l'ai testé sous VS2005 et je n'est pas eu de problème.

en revanche je n'ai pas testé celui d [auteur/EXPLOREUR/17710.aspx Exploreur]. (je ne suis même pô énervé )

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
10
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
18 octobre 2007

Oui j'ai testé mais ça ne marche pas.
T'as formule doit etre correct mais peux etre que je ne l'applique pas correctement...
Pourrais tu me dire ( même si ça peut paraitre bête ) exactement les manips que tu fais ? En m'écrivant les mots en italique que je dois remplacer etc...
Encore dsl si j'y arrive pas, je vous promets que je cherche ...
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
56
Salut,

J'ai un Formulaire dans lequel j'ai mis trois textbox (SANS LES RENOMMER) un bouton et un pictureBox (SANS LES RENOMMER NON PLUS)

Ensuite tu n'as plus qu'a copier coller le code
dans le code du forumlaire. PAS BESOIN DE REMPLACER QUOI QUE CE SOIT SAUF PEU ETRE LE NOM DES OBJETS MAIS CA IL FAUT PEU ETRE L APPRENDRE UN PEU PAR TOI MEME....

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
10
Date d'inscription
mardi 16 octobre 2007
Statut
Membre
Dernière intervention
18 octobre 2007

Alors, je m'y suis repenché aujourd'hui, en effet tu avais raison Jrivet, mais il y avait une petite chose à modifier ;)

        Dim PosEspace As Integer = TextBox1.Text.IndexOf(" ")
        Dim nom As String = TextBox1.Text.Substring(0, PosEspace)
        Dim prenom As String = TextBox1.Text.Substring(PosEspace + 1)
        Dim cheminphoto As String = "\\domain\photos" & _
          prenom.ToLower & nom.ToLower & ".jpg"
        'on stocke le nom dans textbox 2
        TextBox2.Text = nom
        'on stocke le prenom dans textbox 3
        TextBox3.Text = prenom

        'Si les images sont toujours nomme par prenomnom.jgp on peut faire
        
'PictureBox1.Image = Image.FromFile("\\domaine\photos" & _
          prenom.ToLower & nom.ToLower & ".jpg")
        If System.IO.File.Exists(cheminphoto) Then PictureBox1.Image = _
          Image.FromFile(cheminphoto)

La ligne que j'ai souligné, il faut soit enlever l'appostrophe, soit ajouter à la fin de ".jpg") en rajouter un ( en fait ça sert à faire les commentaires les appostrophes... si j'ai bien compris  ).

Voilà, je voulais encore te remercier, JRIVET ainsi qu'EXPLOREUR pour votre amabilité, rapidité et sérieux  et encore une fois, désolé de mettre trompé de partie du forum