Frederick_Etudiant
Messages postés17Date d'inscriptionmercredi 3 janvier 2007StatutMembreDernière intervention14 janvier 2009
-
14 nov. 2008 à 10:42
Frederick_Etudiant
Messages postés17Date d'inscriptionmercredi 3 janvier 2007StatutMembreDernière intervention14 janvier 2009
-
22 nov. 2008 à 11:23
Bonjour à tous,
Sur une interface graphique, j'affiche une liste déroulante.
Le contenu de cette liste déroulante est un vecteur ne contenant que des chaînes de caractères.
Le contenu est assez long et non trié. Je n'ai pas trouvé de fonction de tri automatique et je pense peut-être en faire une si le besoin s'en fait sentir.
Mon principal souci ne se situe pas dans ce tri mais plutôt dans la longueur du contenu. Je souhaiterais que le contenu se réduise en tapant une chaîne de caractère. Pour être plus précis, je souhaiterai qu'en tapant, par exemple, "Jean" le contenu visible se réduise aux éléments contenant la chaîne "Jean".
J'imagine que ce genre d'algorithme existe quelque part (on le retrouve souvent pour les sites web) mais je n'arrive pas à mettre la main dessus.
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 14 nov. 2008 à 11:17
Salut salut,
Bon je vais répondre en 2 temps à tes questions.
Tout d'abord, saches que pour trier une List (donc un Vector ou un ArrayList ou autre... bref tout ce qui implémente List<E>), il existe une méthode pour trier facilement
Vector<String> tonVector = new Vector<String>();
.... // remplissage du vector dans le désordre
Collections.sort(tonVector);
// voilà, ici, le vecteur est trier par ordre alphabétique
Je reviens vers toi plus tard (trop de taf) pour ce que tu veux faire avec ta liste
j'ai une piste
<hr width="100%" size="2" />
C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
dvoraky
Messages postés744Date d'inscriptiondimanche 1 avril 2007StatutMembreDernière intervention 9 mai 20108 14 nov. 2008 à 15:36
Re,
Merci d'avoir validé ma réponse.
Bon j'ai regardé, et le truc c'est que j'arrive à un dilemne.
Si tu veux, d'origine, si tu fous le focus sur la JComboBox et que tu tapes du texte, ça positionne la liste automatiquement sur l'élément qui s'en rapproche le plus.
Ca c'est pas mal déjà et y'a rien à faire surtout.
Ensuite, j'ai essayé de mettre la JComboBox en "editable" (setEditable(true)); Mais après, c'est bien on peut saisir dans la JComboBox, par contre, je ne sais pas sur quel objet l'évènement de saisi est généré... J'ai essayé à peu près tous les listener qu'il y a sur la JComboBox mais sans résultat, aucun évènement ne m'était renvoyé.
Un truc qui par contre serait possible, ça serait de faire un JTextArea à coté et que la JComboBox soit filtré en fonction de ce que tu tapes dans ce textarea...
A voir quoi...
Désolé, je n'ai pas plus pour toi.
<hr width="100%" size="2" />
C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...