JulioDelphi, es-tu sûr que ton code fonctionne tel qu'il est ?
Chez moi, sous D6, 2 problèmes :
- problème mineur : il me semble qu'il vaut mieux passer par UpperCase ou LowerCase afin d'autoriser la saisie "txt" ou "TXT". En plus, je crois que la fonction ExtractFileExt() ne retourne l'extension qu'en majuscule, et de toute manière l'extension des fichiers recherchés peut être en minuscules ou en majuscules...
- problème majeur : toujours la fonction ExtractFileExt(), il semble, après vérification, qu'elle retourne l'extension sur 5 caractères ! Bizarre autant qu'étrange, non ? D'où l'impossibilité de comparer avec "="...
Donc, voici une légère modification à apporter au code, et là ça fonctionne nickel :
remplacer :
if ExtractFileExt(stv.Items.Item[i].Text)=format('.%s',[edit1.text]) then
par :
if Pos(UpperCase(Format('.%s',[Edit1.Text])), UpperCase(ExtractFileExt(stv.Items.Item[i].Text))) <> 0 then
Tu vois ce que je veux dire, JulioDelphi, toi qui comprends vite (contrairement à d'autres)... >:)
Qu'en penses-tu ?
...
Alors, nuns, ça va fonctionner comme ça ?
Sinon j'ai une solution alternative, en passant par un TSearchRec, mais ça devrait être moins optimisé, je pense, puisque le TShellTreeView a déjà fait le travail. Encore que... ça reste à voir.
Bonne prog' :-p