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

Composants Java Discussion :

JList, valeur en cours non affichée


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut JList, valeur en cours non affichée
    Bonjour,

    J'utilise un composant JList permettant d'afficher 2 ou 3 valeurs.
    Lorsque je fixe une valeur via l'instruction setSelectedIndex() et que cette valeur n'est pas dans les 3 première lignes, elle n'est pas affichée. En d'autres termes, il n'y a pas de scrolling automatique pour l'afficher dans la zone d'affichage.
    Quelle est la manière de résoudre ceci?

    d'avance merci.

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Sur chaque composant Swing, tu as une méthode scrollRectToVisible() qui permet de demander au JScrollPane parent de scroller afin de faire en sorte que la zone indiqué soit visible.

    Il suffit donc d'utiliser la méthode getCellBounds() pour récupérer les coordonnées de la zone occupé par ta cellule, ce qui donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	// On récupère le rectangle occupé par une cellule :
    	Rectangle rect = list.getCellBounds(index, index);
    	// On demande le scroll vers cette zone :
    	list.scrollRectToVisible(rect);
    a++

  3. #3
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Tu es absolument génial, adiGuba

    Mais, enfin, pourquoi cela n'est-il pas automatique ? Cela parait compliqué pour réaliser une action qui semble si naturelle...

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par SheikYerbouti Voir le message
    Mais, enfin, pourquoi cela n'est-il pas automatique ? Cela parait compliqué pour réaliser une action qui semble si naturelle...
    C'est malheureusement un des défauts de l'API Swing ! Elle est relativement complète mais peu de chose sont automatisé

    a++

  5. #5
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Citation Envoyé par adiGuba Voir le message
    C'est malheureusement un des défauts de l'API Swing ! Elle est relativement complète mais peu de chose sont automatisé

    a++
    En fait il y a un peu plus facile à utiliser que le scrollRectToVisible, il s'agit de la méthode ensureIndexIsVisible(int index)

  6. #6
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par sinok Voir le message
    En fait il y a un peu plus facile à utiliser que le scrollRectToVisible, il s'agit de la méthode ensureIndexIsVisible(int index)
    Ah oui !

    Bien vu

    a++

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

Discussions similaires

  1. Valeur du recordset non affichée dans formulaire
    Par diombo dans le forum VBA Access
    Réponses: 1
    Dernier message: 14/10/2013, 15h59
  2. [VxiR2] Prompt BO passage de valeur non affichée
    Par vpacquet dans le forum Designer
    Réponses: 3
    Dernier message: 29/07/2013, 16h22
  3. Valeur non affichée dans un formulaire
    Par nicolasferraris dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 15/04/2009, 08h55
  4. valeur de variable non affichée
    Par dieudo dans le forum Langage
    Réponses: 5
    Dernier message: 16/01/2008, 21h38
  5. [Quick Report] Valeur d'un champ existante mais non affichée
    Par navis84 dans le forum Bases de données
    Réponses: 1
    Dernier message: 31/03/2005, 09h15

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