bonjour à tous,
tout d'abord petite explications :
dans le cadre d'un projet pour mes étude, je cherche à afficher un liste de nom (qui proviendra d'un base de donnée) et le but final est que quand je clique dessus je remplisse des JTextField des informations tiré de la base par rapport à se nom.
je précise que je début en java (même si j'ai pas mal d'expérience dans d'autre langage)

le seul souci c'est cette liste
après quelque recherche, j'ai choisi d'utiliser un JList
que je place dans un JScrollPane
et là pour l'instant je souhaitez juste faire que quand je clique sur un élément de la liste, cette élément soit affiché dans un label prévu à cet effet.

voici le code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import java.awt.Color;
import javax.swing.JList;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
 
public class FenetreBD extends JFrame {
 
    private JPanel container = new JPanel();
    private String[] contenu = {"robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien", "robin", "dimitri", "thomas", "julien"}; 
    private JList liste = new JList(contenu);
    private JScrollPane frameliste = new JScrollPane(liste);
    private JLabel reponse = new JLabel("...");
 
 
    public FenetreBD(){ 
 
        this.setTitle("Animation");
        this.setSize(300, 300);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setLocationRelativeTo(null);
 
        container.setBackground(Color.white);
        container.setLayout(null);
 
        frameliste.setBackground(Color.white);
        frameliste.setBounds(10,10,150,200);
 
        reponse.setBounds(10, 220, 150, 20);
 
        container.add(frameliste);
        container.add(reponse);
 
        this.setContentPane(container);
        this.setVisible(true);
 
        liste.addListSelectionListener(new ListSelectionListener() {
            public void valueChanged(ListSelectionEvent e) {
                // --méthode test qui marche : quand je clique dans la liste, ça ajoute au label
                reponse.setText("il y a eu une selection");
                // --méthode 2 :afficher la selection dans le label "reponse" : marche pas
                //reponse.setText(liste.getSelectedValue());
                // --méthode 3 : afficher l'index de la selection dans le label réponse : marche pas
                //reponse.setText(liste.getSelectedIndex());
            }
        }
        );
    }
 
    public static void main(String[] args) {
        new FenetreBD();
    }
}
en faite je n'arrive pas à récupérer la donnée de la ligne sélectionnée, j'ai mi les lignes de code que j'ai testés en commentaires

pouvez vous me dire o`u est mon erreur ?
ou si vous connaissez une méthode plus simple pour afficher une liste de ce genre, dite le moi.

merci d'avance
robin