Bonjour à tous,
Je rencontre un problème pour ranger les exercises dans la List exercise et Les corrigés dans la list corrigé, mais je ne sais pas comment je peux résoudre ce problème.toutes les information qui remplit la list exercise provient d'un fichier Xml.ca serait vraiment de proposer une solution.
je vous remercie à l'avance.
Vous avez le IHM en bas en pièce jointe.
voici le code pour recupérer les information depuis le fichier Xml.
voila le code pour afficher dans la list Exercise:
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83 /** * Parse Exercise. * * @return */ public List<ExerciseModel> parseExercise() { List<ExerciseModel> exerciseModels=null; if(this.document!=null) { Element rootElement = this.document.getRootElement(); if(rootElement!=null) { //Node : paths. Element pathsElement=rootElement.getChild("paths"); if(pathsElement!=null) { //Node : EXERCISE. Element exerciseElement =pathsElement.getChild("EXERCISE"); if(exerciseElement!=null) { //Create the list of exercise Model. exerciseModels= new ArrayList<ExerciseModel>(); //Node : files. Element filsElement = exerciseElement.getChild("files"); if(filsElement!=null) { for(Object file: filsElement.getChildren()) { Element fileElement = (Element) file; //Create the ExerciseModel. ExerciseModel exerciseModel =new ExerciseModel(); String name=fileElement.getChildText("name"); System.out.println(name); exerciseModel.setName(name); String type=fileElement.getChildText("type"); System.out.println(type); exerciseModel.setType(type); String time=fileElement.getChildText("time"); System.out.println(time); exerciseModel.setTime(time); //Node : resources. Element ressourcesElement = fileElement.getChild("resources"); if(ressourcesElement!=null) { //Create the list of ressourceModels. List<RessourceModel> ressourceModels = new ArrayList<RessourceModel>(); for(Object file1:ressourcesElement.getChildren()) { Element fileElement1 = (Element) file1; //Create the ressourceModels. RessourceModel ressourceModel=new RessourceModel(); System.out.println(fileElement1.getChildText("name")); ressourceModel.setName(fileElement1.getChildText("name")); System.out.println(fileElement1.getChildText("type")); ressourceModel.setType(fileElement1.getChildText("type")); //Add the ressourceModel in the ressourceModel list ressourceModels.add(ressourceModel); } //Set the list of ressourceModels in the exerciseModel. exerciseModel.setRessources(ressourceModels); } //Set the exerciseModel in the list if exerciseModel. exerciseModels.add(exerciseModel); } } } } } } return exerciseModels; }
Image IHM
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126 /** * Initialize the model. * Select the first element of the list and display it. * */ public void initModel(List<ExerciseModel> exercises) { if(exercises!=null) { this.exerciseListModel = new ExerciseListModel(exercises); this.exercises.setModel(this.exerciseListModel); if(!exercises.isEmpty()) { int index=0; //Select the first element. this.exercises.setSelectedIndex(index); ExerciseModel exercise=(ExerciseModel)this.exerciseListModel.getElementAt(index); // Display the exercise. if(exercise!=null) { this.initRessourceModel(exercise.getRessources()); if(this.ressourceListModel!=null) { //Display the selected exercise. this.displayExercise(exercise); //exercise.getName(); } } } } } /** * @param ressources */ public void initRessourceModel(List<RessourceModel> ressources) { if(ressources!=null) { for(RessourceModel ressource: ressources) { ressources.contains(ressource.getName()); } this.ressourceListModel=new RessourceListModel(ressources); this.ressources.setModel(this.ressourceListModel); if(!ressources.isEmpty()) { int index=0; this.ressources.setSelectedIndex(index); RessourceModel ressource=(RessourceModel)this.ressourceListModel.getElementAt(index); if(ressource!=null) { this.displayRessource(ressource); } } } } /** * Display the exercise. * * @param exercise Exercise. */ private void displayExercise(ExerciseModel exercise) { if(exercise!=null) { this.timeTF.setText(exercise.getTime()); this.nameTF.setText(exercise.getName()); this.typeCB0.setSelectedItem(exercise.getType()); List<RessourceModel> list=exercise.getRessources(); if(list!=null) { initRessourceModel(list); } } } /** * Select the exercise. * * @param index INdex of exercise. */ private void selectExercise(int index) { if(index>-1) { ExerciseModel exercise=this.exerciseListModel.get(index); if(exercise!=null) { this.displayExercise(exercise); } } } /** * Display the ressource. * * @param ressource Ressource. */ private void displayRessource(RessourceModel ressource) { if(ressource!=null) { this.typeCB1.setSelectedItem(ressource.getType()); } } /** * Select the ressource. * * @param index Index of ressource. */ private void selectRessourceType(int index) { if(index>-1) { RessourceModel ressource=this.ressourceListModel.get(index); if(ressource!=null) { this.displayRessource(ressource); } } }
Partager