bonjour
j'utilise un composant "personnalisé", une jlist avec des cases à cocher, disponible à cette adresse : http://www.jroller.com/santhosh/date/20050611#jlist_with_checkboxes.
voici mon code :
la déclaration, dans la constructeur du jdialog
et son utilisation, plus loin dans le constructeur:
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 final JList list_typexams = new JList(); final DefaultListModel<String> model_exams = new DefaultListModel<>(); for (String type : Fenetre_2.Type_examen) { model_exams.addElement(Fenetre_2.find_corr_type(type)); } list_typexams.setModel(model_exams); final CheckListManager mng_typexams = new CheckListManager(list_typexams); // mise a jour du modele via le checklistmanager int index = 0; for (String type : Fenetre_2.Type_examen) { if (Fenetre_2.oracle_typexam.contains(type)) { mng_typexams.getSelectionModel().addSelectionInterval(index, index); } index++; } scrollPane.setViewportView(list_typexams);
mais en déboguant le programme je me suis rendu compte que la condition où se trouve la flèche pose un problème : le débogueur d'eclipse me dit que la variable mng_typexams est inaccessible, ne correspond à aucune variable.
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 JButton okButton = new JButton("OK"); okButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { /* * 0.enregistrement */ // ArrayList qui comprend tous les sites a true Fenetre_2.oracle_site = new ArrayList<>(); int index = 0; for (String site : Fenetre_2.Site) { if (mng_sites.getSelectionModel().isSelectedIndex(index)) Fenetre_2.oracle_site.add(site); index++; } // ArrayList qui comprend tous les type d'examens a // true Fenetre_2.oracle_typexam = new ArrayList<>(); index = 0; for (String type : Fenetre_2.Type_examen) { if (mng_typexams.getSelectionModel().isSelectedIndex(index)) <------ Fenetre_2.oracle_typexam.add(type); index++; }
pourquoi ne puis-je pas y accéder?
olivier
ps : le compilateur ne dit rien, et le débogueur non plus (mis à part que la variable n'est pas accessible)
Partager