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 :

Remplir une combobox avec les valeurs d'une clé d'un fichier ini


Sujet :

VB.NET

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Points : 86
    Points
    86
    Par défaut Remplir une combobox avec les valeurs d'une clé d'un fichier ini
    Bonjour,
    j'ai un fichier ini qui contient ca:

    [Prochain entretien]
    Atelier Mr24;Tour Schaublin n°1;changer l'huile=23.10.2019
    Atelier Mr30;Fraiseuse 213 n°1;évaluation=14.12.2018
    Atelier Mr24;Tour Schaublin n°1;évaluation de la poupée=15.10.2018

    et j'aimerai récupérer tout ce qu'il y a dans la clà Prochain entretien et le mettre dans une combobox, merci

  2. #2
    Membre averti Avatar de Delaney
    Homme Profil pro
    Developpeur VB amateur
    Inscrit en
    Mars 2014
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Developpeur VB amateur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2014
    Messages : 148
    Points : 372
    Points
    372
    Par défaut
    tu lis ton fichier jusqu'à trouver ton critère de sélection :


    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
     Dim filename As String
            Dim ligne As String
            Dim result As DialogResult = OpenFileDialog1.ShowDialog()
            If result = System.Windows.Forms.DialogResult.OK Then
                filename = OpenFileDialog1.FileName
            End If
     
     
            Dim sr As StreamReader = New StreamReader(Filename)
            While sr.EndOfStream = False
                ligne = sr.ReadLine()
                If ligne = "[Prochain entretien]" Then
                    For i = 1 To 3
                        ComboBox1.Items.Add(sr.ReadLine())
                    Next
                    Exit While
                End If
            End While

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Points : 86
    Points
    86
    Par défaut
    merci, ca marche.
    juste un petit point dans le for i= 1 to 3 si je ne connais pas le nombre d'enregistrement je remplace le 3 par quoi?

  4. #4
    Membre averti Avatar de Delaney
    Homme Profil pro
    Developpeur VB amateur
    Inscrit en
    Mars 2014
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Developpeur VB amateur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2014
    Messages : 148
    Points : 372
    Points
    372
    Par défaut
    tu crées une boucle avec une condition: au lieu d'un For next, tu utilise un while / end while

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while ligne <> "" 'si la ligne suivant ton bloc à récupérer est vide
    while ligne <> "[Bloc suivant]" 's'il y a un autre bloc juste après
    while sr.EndOfStream = False 'si c'est le dernier bloc et la fin du fichier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    If ligne = "[Prochain entretien]" Then
          dim ligne2 as string=ligne 'permet de ne pas avoir ligne2 vide pour le premier passage de la boucle while tu peux mettre ="" si il n'y a aucune ligne vide dans le fichier
           While ligne2<> critère
                   ligne2 = sr.ReadLine()
                   If ligne2 <> critère Then ComboBox1.Items.Add(ligne2) ' ce test permet d'éviter d'avoir la ligne du critère dans la combobox  
                                                                         ' tu n'en as pas besoin si le critère c'est la fin du fichier               
           end while
    End If

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    428
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2008
    Messages : 428
    Points : 86
    Points
    86
    Par défaut
    merci beaucoup

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

Discussions similaires

  1. [XL-2010] Comment utiliser les valeurs d'une zone de liste ou d'une combobox ?
    Par Stiard dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/11/2014, 09h09
  2. [XL-2010] PB remplir une ComboBox avec les valeurs de plusieurs cellules sur la même lignes
    Par eviuss dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/05/2014, 07h01
  3. Réponses: 4
    Dernier message: 04/05/2012, 17h23
  4. remplir un model avec les valeurs d'une JList
    Par soujava dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 15/05/2008, 21h11
  5. [VB6]Mettre à jour une table avec les valeurs d'une DATAGrid
    Par mbzhackers dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 26/05/2006, 20h56

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