Jcombobox autocomplétion

Résolu
cs_Manyanya Messages postés 51 Date d'inscription mercredi 23 décembre 2009 Statut Membre Dernière intervention 9 mai 2012 - 24 août 2011 à 08:49
cs_Manyanya Messages postés 51 Date d'inscription mercredi 23 décembre 2009 Statut Membre Dernière intervention 9 mai 2012 - 24 août 2011 à 13:45
Salut à tous,

J'ai appris le java seul en autodidacte depuis l'année passée et actuellement je viens faire ma première sérieuse application. Je suis buté à un problème avec le jcombobox.

En effet, je charge bien mes items et je en peux sélectionner un. Dans une application faite par un ami en Microsoft Access j'ai vu que dans ce genre de composant il suffit qu'il commence à y écrire les items qui commencent les caractères qu'il tape au clavier sont mis en fil avec par défaut le premier d'entre-eux. Au point que même avec qu'il ne termine à saisir le texte de sa sélection il peut confirmer celui qui s'affiche par défaut.

Je voudrais bien que dans mon application en utilisant mes combobox je puisse y arriver.

Merci de vouloir bien m'aider !

Regards.

6 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
24 août 2011 à 09:50
Bonjour,

Je ne sais pas si je vois vraiment ce dont tu as besoin, tu peux également commencer à taper les mots dans la combobo java de Swing.

Tu peux également jeter un œil à ce code : http://www.javafr.com/codes/AUTOCOMPLETE-SWING_53481.aspx
3
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
24 août 2011 à 09:50
Juste une vérification : tu utilises bien Swing, tu ne fais pas une interface web ?
0
cs_Manyanya Messages postés 51 Date d'inscription mercredi 23 décembre 2009 Statut Membre Dernière intervention 9 mai 2012 11
24 août 2011 à 10:26
Salut,

J'utilise justement le swing.

Pour écrire dedans j'ai rendu éditable et cela se passe correctement mais ne sélectionne pas les items qui commencent par les caractères saisis et j'ai un message d'erreur.

Dans l'autre cas lorsque le jcombobox est non éditable, une fois que je tape le premier caractère il sélectionne le premier item ayant ce caractère. Ce n'est pas ce que je cherche.

Je vous donne un exemple:

Dans ma liste d'items j'ai: Hortense Deparis, Jean-Pierre Dubois, Jean-Pierre Ledoux, Jean-Jacques Lemaire, Jean-Louis Diallo

Lorsque j'écris dans mon Jcombobox "Jean" (avant que je ne confirme), ma préférence c'est d'avoir la liste de tous ceux-là leurs noms commencent par "Jean"; par défaut c'est Jean-Jacques Lemaire qui est posé en se basant par un tri aphabétique. En dessous de lui, les autres "Jean" se mettent en queue Hortense Deparis n'est pas dans la liste.

C'est comme lorsque je fais mes codes avec Netbeans, lorsque j'écris "set" et que je fais CTRL+Space il me propose la liste qui commence avec set à moi de sélectionner ce que je veux.

Tel est mon vœu !

J'espère me faire comprendre et merci pour votre aide.

Regards
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
24 août 2011 à 11:22
Oui, je vois mieux ce que tu veux faire.

Il n'existe pas d'option pour faire cela directement à partir d'un JComboBox, tu vas devoir le coder toi même. Ce mécanisme s'appelle l'autocomplétion.

Bon courage
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
24 août 2011 à 11:23
As tu regardé la source que je t'ai donné, ce n'est pas exactement ce que tu veux mais tu n'as pas grand chose à modifier pour que ca adopte le comportement que tu souhaites.
0
cs_Manyanya Messages postés 51 Date d'inscription mercredi 23 décembre 2009 Statut Membre Dernière intervention 9 mai 2012 11
24 août 2011 à 13:45
Salut,

Merci pour votre aide !

Il me faut me concentrer pour le faire et surtout jeter un coup d'oeil profond sur vos codes.

Encore merci !
0
Rejoignez-nous