Recherche par mots clefs avec une listbox

Soyez le premier à donner votre avis sur cette source.

Vue 6 164 fois - Téléchargée 1 044 fois

Description

Ce code permet de rechercher dans une ListBox, mais avec une méthode différente de celle de DelphiCool. Elle permet également de rechercher des mots clefs stockés dans une ListBox dans une chaîne.

Voilà moi ca m'a servi, alors peut-être à vous aussi... On c'est jamais... ;)

Source / Exemple :


In the ZiP!

Conclusion :


Remerciement à Michel de Phildels.com pour NBSousChaine, à DelphiCool pour sa fonction Cherche_ListBox qui malheuresement ne me convenais pas...

Voila, c'est tout ;)

[big_fury]SiZiOUS, http://www.sbibuilder.fr.st/

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

yannfrance
Messages postés
48
Date d'inscription
mardi 18 septembre 2007
Statut
Membre
Dernière intervention
1 décembre 2010

merci beaucoup pour ce source, elle m'as tres bien servi.
Ca merite la note maxi...
cs_morinxav2
Messages postés
69
Date d'inscription
mercredi 30 juin 2004
Statut
Membre
Dernière intervention
6 octobre 2011
1
Bonsoir,
super cela m'a economisé quelques nuits de sommeil !!
juste deux fonctions supplèmentaires pour completer ton travail :

{-----------------< FUNCTION Cherche_ListBox_Suivant >-------------------}

function Cherche_ListBox_Suivant(Chaine : string ; ListBox : TListBox) : Integer;
var
Index : integer;
CurrentItem : string;

begin
Result := -1;
Chaine := UpperCase(Chaine);

for Index := listbox.ItemIndex+1 to ListBox.Items.Count - 1 do
begin
CurrentItem := UpperCase(ListBox.Items.Strings[Index]);
//AddError(IntToStr(Index) + ' WinText : ' + Chaine + ' Nb Sous Chaine : ' + IntToStr(NbSousChaine(Chaine, CurrentItem)));
//AddError(Chaine + ' - ' + CurrentItem);
if NbSousChaine(Chaine, CurrentItem) > 0 then
begin
Result := Index;
Exit;
end;
end;
end;
{----------------< FUNCTION Cherche_ListBox_Precedant >------------------}

function Cherche_ListBox_Precedant(Chaine : string ; ListBox : TListBox) : Integer;
var
Index : integer;
CurrentItem : string;

begin
Result := -1;
Chaine := UpperCase(Chaine);

for Index := listbox.ItemIndex-1 downto 0 do
begin
CurrentItem := UpperCase(ListBox.Items.Strings[Index]);
//AddError(IntToStr(Index) + ' WinText : ' + Chaine + ' Nb Sous Chaine : ' + IntToStr(NbSousChaine(Chaine, CurrentItem)));
//AddError(Chaine + ' - ' + CurrentItem);
if NbSousChaine(Chaine, CurrentItem) > 0 then
begin
Result := Index;
Exit;
end;
end;
end;
bonne prog, A+

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.