Bonjour,
es-tu sur que ca va ramer ? Cela dépend de l'ordi évidemment.
Bon, je sais pas s'il existe une méthode toute faite pour ton probleme, mais il doit y avoir moyen de solidement l'optimiser !!!
parametrons 2 variables
var indiceStart:Number=0
var indiceStop:Number=liste.length
var sequence:String="" // la ou les lettres tapées pour la recherche
var found:Number=indiceStartfor(i=indiceStart, i< indiceStop, i++){
if(liste.getitem().data==sequence){
if (found==indiceStart){
found=i
indiceStart=i
}
}else{
if (found!=indiceStart){
indiceStop=i
break;
}
}}
// ensuite tu fais avancer ta liste jusqu'à indiceStart (ou found, c'est pareil)
Avec ce systeme tu ne parcoureras jamais la liste entière (sauf si aucun item ne commence par la lettre que tu a taper en premier)
Et surtout, si tu tape une deuxieme lettre, la recherche commencera non plus a 0 mais au premier indice trouvé précedemment, et s'arretera dès le changement de lettre
Attention à bien remettre a zero les compteurs si on change la séquence de lettre... voir socker dans un tableau les incides successifs pour optimiser les retours...
@+
