IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NetBeans Java Discussion :

Saisie automatique ("Autocompletion") sur JTextField à partir de JCombobox


Sujet :

NetBeans Java

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 8
    Points
    8
    Par défaut Saisie automatique ("Autocompletion") sur JTextField à partir de JCombobox
    Bonjour,

    Je souhaiterai faire une saisie (semi) automatique d'un mot récupéré d'une Combobox dans un JTextField. Sachant que la Combobox, en question, est alimentée par des données, venant d'un fichier Excel.
    Exemple : j'écris "fra" et la saisie propose "fraise"

    Mon problème est que j'initialise les valeurs de façon statique, comme ci-dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String[] lesFruits = new String[] {"fraise", "framboise"};
    Pouvez-vous m'aiguiller de façon à ce que je puisse récupérer les valeurs qui sont dans la Combobox, lors de la saisie ?


    Merci de votre aide

  2. #2
    Membre expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Points : 3 675
    Points
    3 675
    Par défaut
    Hello,

    les autocomplete en swing, ne sont pas disponible de base, mais réalisables assez facilement, mais de plusieurs manières différentes (jtextfield comme editor de la combo, jtextfield+autocompletion sans popup, swingx, etc). Je te laisse choisir celle qui te plait le plus: https://www.google.ch/?q=java+swing+...g+autocomplete

    "Le plug gros problème des citations trouvées sur internet, c'est qu'on ne peut jamais garantir leur authenticité"

    Confucius, 448 av. J-C

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Hello,

    Merci Pill_S de ton aide

    J'utilise déjà SwingX la saisie automatique est fonctionnelle... Mais de façon "statique". J'ai pour cela, initialisé un tableau avec toutes les valeurs.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String[] lesFruits = new String[] {"fraise", "framboise"};
    J'essaye à présent de faire ça de façon "dynamique". Mais je ne sais pas du tout comment m'y prendre... Quand je dis dynamique, c'est-à-dire que je voudrais pouvoir saisir dans le JTextField et avoir une saisie semi-automatique des valeurs d'une combobox. La combobox, en question, récupère ses valeurs via un fichier excel.
    J'ai essayé de faire quelque chose, mais ça ne ressemble pas à grand chose :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    String[] lesFruits = new String[] {"fraise", "framboise"}; //là, y'a un problème, je devrai aller chercher les objets dans le fichier excel
                                                              //je ne sais pas comment l'appeler
    for (int i = 0; i < fruit.length; i++) //boucle qui va voir s'il y a des chose dans le fichier excel
    {
          String fruit = fruit[i];
    }

    Merci de votre aide

  4. #4
    Membre expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Points : 3 675
    Points
    3 675
    Par défaut
    C'est un peu confu tout ça... dans ton post précédent tu disais n'avoir pas de problème avec la lecture de l'excel?

    Ensuite je ne comprend pas, la liste des propositions doit être récupérée depuis la combo? pourquoi ne pas stocker dans un champ de classe ce qui est extrait du fichier excel pour alimenter à la fois la combobox et l'autocomplete?

    au pire, tu peux lister les valeurs disponibles dans une combo de cette façon:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    ComboBoxModel model = jComboBox.getModel();
     
    for(int i=0;i<model.getSize();i++) {
        Object element = model.getElementAt(i);
        System.out.println("Element at " + i + " = " + element);
    }
    mais je ne sais pas si ça va t'aider...
    "Le plug gros problème des citations trouvées sur internet, c'est qu'on ne peut jamais garantir leur authenticité"

    Confucius, 448 av. J-C

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Merci Pill_S de ta réponse.

    Désolé, j'ai sûrement mal formulé mes idées. Je vais essayer de le refaire au mieux.

    Alimenter une combobox via un fichier excel cela marche.
    Autocompletion (avec des valeurs qui proviennent d'un autre tableau statique), ça marche aussi.

    Mon objectif est de pouvoir utiliser les valeurs du fichier excel, pour l'autocomplete (depuis le JTextField).
    Donc, oui (pour répondre à ta deuxième question) la liste des propositions doit provenir de la combobox

    Pour ce qui est de l'organisation des classes, j'ai fais :
    - une classe pour la récupération des données du fichier excel
    - pour l'autocompletion, se décompose en 3 autres classes
    Et tu me conseilles de regrouper tout ensemble si j'ai bien compris ?

    Merci pour toute aide

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    J'ai réussi, merci beaucoup Pill_S pour ton aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 22/02/2012, 15h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo