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 :

Problème programmation en boucle


Sujet :

VB.NET

  1. #1
    Candidat au Club
    Homme Profil pro
    DUT INFORMATIQUE
    Inscrit en
    Septembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : DUT INFORMATIQUE
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 7
    Points : 3
    Points
    3
    Par défaut Problème programmation en boucle
    Bonjour ;
    Je me suis lancé sur un petit projet tout simple, en effet mon but serait qu'une fois une adresse vidéo youtube mise dans une textbox1 et appuyée sur un boutton ont puissent afficher tout les tags que la personne à utilisé pour sa vidéo. Tout allez bien jusqu’à que je me constate que tout les tags soient misent en plusieurs exemplaires ... c'est normal ?

    Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    Public Class Form1
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            WebBrowser1.Navigate(TextBox1.Text)
        End Sub
     
        Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
            If (WebBrowser1.Document IsNot Nothing) Then
                Dim Elems As HtmlElementCollection
                Dim WebOC As WebBrowser = WebBrowser1
     
                Elems = WebOC.Document.GetElementsByTagName("META")
     
                For Each elem As HtmlElement In Elems
                    Dim NameStr As String = elem.GetAttribute("property")
     
                    If ((NameStr IsNot Nothing) And (NameStr.Length <> 0)) Then
                        If NameStr.ToLower().Equals("og:video:tag") Then
                            Dim ContentStr As String = elem.GetAttribute("content")
                            TextBox2.Text = TextBox2.Text & vbCrLf & ContentStr
                        End If
                    End If
                Next
            End If
        End Sub
    End Class
    Pouvez vous m'aider à régler ce problème qui pourrais m'afficher au final chaque Tags une seule fois ? Merci

  2. #2
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2013
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2013
    Messages : 235
    Points : 359
    Points
    359
    Par défaut
    Bonjour,
    J'ai essayé ton code avec une vidéo au pif et ça fonctionne bien...
    J'imagine que tes doublons ont été inscrits au moment de la mise en ligne de la vidéo

    Ce que tu peux faire c'est les éviter, quelque chose du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
        Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
            If (WebBrowser1.Document IsNot Nothing) Then
                Dim Elems As HtmlElementCollection
                Dim WebOC As WebBrowser = WebBrowser1
     
                Elems = WebOC.Document.GetElementsByTagName("META")
     
                For Each elem As HtmlElement In Elems
                    Dim NameStr As String = elem.GetAttribute("property")
     
                    If ((NameStr IsNot Nothing) And (NameStr.Length <> 0)) Then
                        If NameStr.ToLower().Equals("og:video:tag") Then
                            Dim ContentStr As String = elem.GetAttribute("content")
                            If Not TextBox2.Lines.Contains(ContentStr) Then
                                'VB6 ==> TextBox2.Text = TextBox2.Text & vbCrLf & ContentStr
                                'VB.NET ==>
                                TextBox2.Text &= ContentStr & Environment.NewLine
                            End If
                        End If
                    End If
                Next
            End If
        End Sub
    Par nature les mots, ils sont flous, c'est une fois alignés qu'ils se précisent.

  3. #3
    Candidat au Club
    Homme Profil pro
    DUT INFORMATIQUE
    Inscrit en
    Septembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : DUT INFORMATIQUE
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par ACIVE_CS Voir le message
    Bonjour,
    J'ai essayé ton code avec une vidéo au pif et ça fonctionne bien...
    J'imagine que tes doublons ont été inscrits au moment de la mise en ligne de la vidéo

    Ce que tu peux faire c'est les éviter, quelque chose du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
        Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
            If (WebBrowser1.Document IsNot Nothing) Then
                Dim Elems As HtmlElementCollection
                Dim WebOC As WebBrowser = WebBrowser1
     
                Elems = WebOC.Document.GetElementsByTagName("META")
     
                For Each elem As HtmlElement In Elems
                    Dim NameStr As String = elem.GetAttribute("property")
     
                    If ((NameStr IsNot Nothing) And (NameStr.Length <> 0)) Then
                        If NameStr.ToLower().Equals("og:video:tag") Then
                            Dim ContentStr As String = elem.GetAttribute("content")
                            If Not TextBox2.Lines.Contains(ContentStr) Then
                                'VB6 ==> TextBox2.Text = TextBox2.Text & vbCrLf & ContentStr
                                'VB.NET ==>
                                TextBox2.Text &= ContentStr & Environment.NewLine
                            End If
                        End If
                    End If
                Next
            End If
        End Sub
    Merci !!! C'est Parfait comme sa ^^

  4. #4
    Candidat au Club
    Homme Profil pro
    DUT INFORMATIQUE
    Inscrit en
    Septembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : DUT INFORMATIQUE
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par ACIVE_CS Voir le message
    Bonjour,
    J'ai essayé ton code avec une vidéo au pif et ça fonctionne bien...
    J'imagine que tes doublons ont été inscrits au moment de la mise en ligne de la vidéo

    Ce que tu peux faire c'est les éviter, quelque chose du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
        Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
            If (WebBrowser1.Document IsNot Nothing) Then
                Dim Elems As HtmlElementCollection
                Dim WebOC As WebBrowser = WebBrowser1
     
                Elems = WebOC.Document.GetElementsByTagName("META")
     
                For Each elem As HtmlElement In Elems
                    Dim NameStr As String = elem.GetAttribute("property")
     
                    If ((NameStr IsNot Nothing) And (NameStr.Length <> 0)) Then
                        If NameStr.ToLower().Equals("og:video:tag") Then
                            Dim ContentStr As String = elem.GetAttribute("content")
                            If Not TextBox2.Lines.Contains(ContentStr) Then
                                'VB6 ==> TextBox2.Text = TextBox2.Text & vbCrLf & ContentStr
                                'VB.NET ==>
                                TextBox2.Text &= ContentStr & Environment.NewLine
                            End If
                        End If
                    End If
                Next
            End If
        End Sub
    Et si je veut mettre chaque tag dans une listbox je fait comment ^^' ?

  5. #5
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2013
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2013
    Messages : 235
    Points : 359
    Points
    359
    Par défaut
    on peux aussi mettre le résultat dans une lettre et l'envoyer par la poste (mais c'est plus long)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
      If (WebBrowser1.Document IsNot Nothing) Then
                Dim Elems As HtmlElementCollection
                Dim WebOC As WebBrowser = WebBrowser1
     
                Elems = WebOC.Document.GetElementsByTagName("META")
     
                For Each elem As HtmlElement In Elems
                    Dim NameStr As String = elem.GetAttribute("property")
     
                    If ((NameStr IsNot Nothing) And (NameStr.Length <> 0)) Then
                        If NameStr.ToLower().Equals("og:video:tag") Then
                            Dim ContentStr As String = elem.GetAttribute("content")
                            If Not ListBox1.Items.Contains(ContentStr) Then ListBox1.Items.Add(ContentStr)
                        End If
                    End If
                Next
            End If
    Par nature les mots, ils sont flous, c'est une fois alignés qu'ils se précisent.

  6. #6
    Candidat au Club
    Homme Profil pro
    DUT INFORMATIQUE
    Inscrit en
    Septembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : DUT INFORMATIQUE
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par ACIVE_CS Voir le message
    on peux aussi mettre le résultat dans une lettre et l'envoyer par la poste (mais c'est plus long)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
      If (WebBrowser1.Document IsNot Nothing) Then
                Dim Elems As HtmlElementCollection
                Dim WebOC As WebBrowser = WebBrowser1
     
                Elems = WebOC.Document.GetElementsByTagName("META")
     
                For Each elem As HtmlElement In Elems
                    Dim NameStr As String = elem.GetAttribute("property")
     
                    If ((NameStr IsNot Nothing) And (NameStr.Length <> 0)) Then
                        If NameStr.ToLower().Equals("og:video:tag") Then
                            Dim ContentStr As String = elem.GetAttribute("content")
                            If Not ListBox1.Items.Contains(ContentStr) Then ListBox1.Items.Add(ContentStr)
                        End If
                    End If
                Next
            End If
    Dernière demande imaginons je lance l'action avec le bouton ... les tags se mettrons dans la listbox
    Une fois que cette listbox a les tags je souhaite mettre un autre lien et cliquer a nouveau sur le bouton
    l'objectif serait de vider la listbox pour la remplacer par les nouveaux tags .. j'ai chercher sur internet j'ai rien trouver

    Merci

  7. #7
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2013
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2013
    Messages : 235
    Points : 359
    Points
    359
    Par défaut
    Re:

    "l'objectif serait de vider la listbox pour la remplacer par les nouveaux tags .. j'ai chercher sur internet j'ai rien trouver "

    Quand tu tapes 'ListBox1.Items.cl'

    Que vois-tu comme proposition dans la liste ??
    Par nature les mots, ils sont flous, c'est une fois alignés qu'ils se précisent.

  8. #8
    Candidat au Club
    Homme Profil pro
    DUT INFORMATIQUE
    Inscrit en
    Septembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : DUT INFORMATIQUE
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par ACIVE_CS Voir le message
    Re:

    "l'objectif serait de vider la listbox pour la remplacer par les nouveaux tags .. j'ai chercher sur internet j'ai rien trouver "

    Quand tu tapes 'ListBox1.Items.cl'

    Que vois-tu comme proposition dans la liste ??
    oh merci j'avais pas vu ^^'

  9. #9
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2013
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2013
    Messages : 235
    Points : 359
    Points
    359
    Par défaut
    Alors je veux bien comprendre que ce ce soit en anglais, pas forcément notre langue maternelle, mais il va falloir t'y familiariser un minimum
    Par nature les mots, ils sont flous, c'est une fois alignés qu'ils se précisent.

  10. #10
    Candidat au Club
    Homme Profil pro
    DUT INFORMATIQUE
    Inscrit en
    Septembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : DUT INFORMATIQUE
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2016
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par ACIVE_CS Voir le message
    Alors je veux bien comprendre que ce ce soit en anglais, pas forcément notre langue maternelle, mais il va falloir t'y familiariser un minimum
    Non mais je sais tout sa je fait DUT INFORMATIQUE c'est juste que la commande elle était pu la et j'avais pas compris pourquoi et en fait j'avais une faute d'orthographe

  11. #11
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2013
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2013
    Messages : 235
    Points : 359
    Points
    359
    Par défaut
    Oui... quand tu mets un point à la place d'une virgule c'est sur que ça va poser problème c'est pour ça qu'on a inventé la correction du code j'ai pas fait DUT mais j'ai commencé avec Qbasic alors chaque point mal placé tu le payes cher....
    Par nature les mots, ils sont flous, c'est une fois alignés qu'ils se précisent.

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

Discussions similaires

  1. [scanf] problème de programme qui boucle
    Par dr4g0n dans le forum Bibliothèque standard
    Réponses: 5
    Dernier message: 22/01/2008, 10h48
  2. [JMeter] Problème avec la boucle infinie pour les tests
    Par zegreg dans le forum Tests et Performance
    Réponses: 1
    Dernier message: 05/10/2005, 11h41
  3. Programmer une boucle de saisie chaine de caractère.
    Par Spike Spiegel dans le forum C
    Réponses: 30
    Dernier message: 02/10/2005, 17h46
  4. [Tableaux] Problème avec les boucles
    Par speed_man002 dans le forum Langage
    Réponses: 4
    Dernier message: 21/09/2005, 15h42
  5. Problème programmation objet
    Par Contrec dans le forum MFC
    Réponses: 54
    Dernier message: 30/03/2005, 11h30

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