JList avec Checkboxes, problème d'accès à une variable
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
Code:
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); |
et son utilisation, plus loin dans le constructeur:
Code:
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++;
} |
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.
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)