jlolaons
Messages postés2Date d'inscriptionjeudi 24 février 2005StatutMembreDernière intervention16 novembre 2008
-
15 nov. 2008 à 22:51
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 2018
-
16 nov. 2008 à 19:03
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
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 16 nov. 2008 à 03:54
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
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 16 nov. 2008 à 09:14
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.
jlolaons
Messages postés2Date d'inscriptionjeudi 24 février 2005StatutMembreDernière intervention16 novembre 2008 16 nov. 2008 à 11:22
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
Vous n’avez pas trouvé la réponse que vous recherchez ?