RECHERCHE PAR MOTS CLEFS AVEC UNE LISTBOX

Signaler
Messages postés
67
Date d'inscription
mercredi 30 juin 2004
Statut
Membre
Dernière intervention
6 octobre 2011
-
Messages postés
48
Date d'inscription
mardi 18 septembre 2007
Statut
Membre
Dernière intervention
1 décembre 2010
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/19591-recherche-par-mots-clefs-avec-une-listbox

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...
Messages postés
67
Date d'inscription
mercredi 30 juin 2004
Statut
Membre
Dernière intervention
6 octobre 2011
4
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+