bonjour
j'utilise une comboBox et je souhaite ajouter du texte dans ma combobox mais lorsque jai deja ce texte, je ne veux pas quil soit rajouté a la suite
bonjour
j'utilise une comboBox et je souhaite ajouter du texte dans ma combobox mais lorsque jai deja ce texte, je ne veux pas quil soit rajouté a la suite
sans rentrer dans le detail, je pense qu'il faut que tu compare le texte a ajouter a chaque text de ta combobox (compare deux chaine de caractere!!)
penchetoi sur cette piste
(netant que deutant en bcb, je ne peut que te dire ca - dsl)
tu fais comme ça:
si ça te renvoi -1 tu ajoute monTexte a la liste du combobox
Code : Sélectionner tout - Visualiser dans une fenêtre à part Combobox->Items->IndexOf(monTexte);
sinon tu fais rien
ca fait comme jusqu'a maintenant, c a dire que ca ajoute a ma combobox meme si le texte est le meme
si tu suis ce que j'ai ecrit tu dois avoir
et ça marche.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 if (ComboBox1->Items->IndexOf(monTexte)==-1){ //si monTexte n est pas ds la liste du combobox ComboBox1->Items->Add(monTexte); // tu ajoutes ton texte } else { ShowMessage("texte deja ds la liste"); // on ajoute pas }
Salut,
Tu peux te faire un truc comme ca:
Texte_a_ajouter est une AnsiString que tu compares à toutes les AnsiStrings de ta ComboBox. Si tu les a tous vu, elle n'y est pas.
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 int i; for(i=0;i<ComboBox1->Items->Count;i++) { if(Texte_a_ajouter == ComboBox1->Items->Strings[i]) break; } if(i == ComboBox1->Items->Count) { //le texte n'y est pas } else { //le texte y est }
Partager