Recherche listBox [Résolu]

Signaler
Messages postés
2
Date d'inscription
jeudi 24 février 2005
Statut
Membre
Dernière intervention
16 novembre 2008
-
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Bonjours,
Je suis novice et commence avec VB 2005
Voila je liste des dossier dans un listbox, les dossiers sont sous la forme XXX-comentaire.

Je cherche à obtenir à partit des trois première lettre la chaine complète. Sachant que dans ma liste les trois première lettre ne peuvent qu'apparaitre qu'une fois.

Exemple:
Je connais CVB
On lance la recherche dans la liste
XXX-com1
FGH-com2
VBN-com3
CVB-com4 <== je voudrait obtenir une chaine CVB-com4

Si quelqu'un peut m'aider, merci
Cordialement J-LO

5 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
allez pour essayer....


    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ListBox1.Items.Add("XXX-com1")
        ListBox1.Items.Add("FGH-com2")
        ListBox1.Items.Add("VBN-com3")
        ListBox1.Items.Add("CVB-com4")
    End Sub

    Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
        ListBox1.SelectedIndex = GetListIndex(ListBox1, TextBox1.Text.ToUpper)
    End Sub

    Function GetListIndex(ByRef oObj As ListBox, ByVal sStartSTring As String) As Integer
        Dim iIndex As Integer = -1

        If (oObj.Items.Count > 0) And (sStartSTring.Length > 0) Then
            For i As Integer = 0 To oObj.Items.Count - 1
                If oObj.Items.Item(i).ToString Like sStartSTring & "*" Then Return i
            Next i
        End If

        Return iIndex
    End Function


<!-- Coloration syntaxique vb/vba/vb.net : http://charles.racaud.free.fr/code-syntaxing/ -->
Coloration syntaxique vb/vba/vb.net




++
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
62
pas mal, aussi, de presser F2 avant de poster des questions qui trouvent leur réponse dans la doc...


Public Function FindString(ByVal s As String) As Integer
Membre de System.Windows.Forms.ListBox

Résumé :
Recherche le premier élément dans System.Windows.Forms.ListBox qui commence par la chaîne spécifiée.

Paramètres :
s: Texte à rechercher.

Valeurs de retour :
Index de base zéro du premier élément trouvé ; retourne ListBox.NoMatches si aucune correspondance n'est trouvée.

Exceptions :
System.ArgumentOutOfRangeException: La valeur du paramètre s est inférieure à -1 ou supérieure ou égale au nombre d'éléments.

-----------

Public Function FindString(ByVal s As String, ByVal startIndex As Integer) As Integer
Membre de System.Windows.Forms.ListBox

Résumé :
Recherche le premier élément dans System.Windows.Forms.ListBox qui commence par la chaîne spécifiée. La recherche commence à un index de départ spécifique.

Paramètres :
s: Texte à rechercher.
startIndex: Index de base zéro de l'élément précédant le premier élément sur lequel la recherche est effectuée. Affectez la valeur -1 pour rechercher à partir du début du contrôle.
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
salut,

et quel est le code que tu as mis en place pour le moment?

un début de piste ici :



http://www.codyx.org/snippet_recuperer-position-chaine-dans-combobox-ou-listbox-selectionner_437.aspx



++


<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp 
Messages postés
2
Date d'inscription
jeudi 24 février 2005
Statut
Membre
Dernière intervention
16 novembre 2008

Merci de vos réponse.

Comme je le disait je suis novice et je ne connaissais pas la recherche avec F2, de plus j'ai quand même passer un peut de temps à rechercher de code mais qui non pas convenue à mon utilisation.

Merci PCPT ton code fonctionne et me renvoi la chaine que je cherche.

Cordialement,
J-LO
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
pense à valider ma réponse dans ce cas

ceci n'empêchant pas d'explorer les autres méthodes que te fournie la listbox ....