Rechercher selectionner dans listbox

Signaler
Messages postés
35
Date d'inscription
vendredi 12 mars 2004
Statut
Membre
Dernière intervention
27 avril 2010
-
Messages postés
35
Date d'inscription
vendredi 12 mars 2004
Statut
Membre
Dernière intervention
27 avril 2010
-
dans un listbox je voudrais pouvoir rechercher une ligne ( nom) en tapant la premiere lettre pour me deplacer plutot que d'utiliser la barre de defilement.
ex. : si je tape F je me deplace sur le premier nom commencant par F.

Si quelqu'un à une idée ?

Merci
guy

3 réponses

Messages postés
323
Date d'inscription
jeudi 6 juin 2002
Statut
Membre
Dernière intervention
24 septembre 2008
1
Salut guy jeuniaux,

Delphi 7 gère le positionnement de index dans le TListbox, suivant les touches que tu tapes.

voici une manière te trouver et de te positionner sur le premier élément de ta TListbox comportant les caractères saisis.

procedure TForm1.Edit1Change(Sender: TObject);
var
  index : integer;
begin
  index := SendMessage(ListBox1.Handle, LB_FINDSTRING, -1, LongInt(PChar(Edit1.Text)));

  if index > -1 then
    ListBox1.ItemIndex := index;
end;


Bonne Prog,

Olivier.
Messages postés
2226
Date d'inscription
dimanche 5 octobre 2003
Statut
Modérateur
Dernière intervention
18 novembre 2010
13
hello,

génial ce ptit code :D
merci a+
Messages postés
35
Date d'inscription
vendredi 12 mars 2004
Statut
Membre
Dernière intervention
27 avril 2010

Olivier,
Merci pour ta reponse.
Malheureusement je suis en DELPHI 5.

Ceci dit j'ai essayé ton code mais cela ne fonctionne pas
Pour ce faire j'ai donc rajouté un edit sur ma form et incorporé ton code en le modifiant.
Que je sois positionné sur le listbox ou sur l'edit rien ne se passe lorsque je tape une lettre.
Peut être aurais tu quelques précisions.

guy