1 pièce(s) jointe(s)
problem d'affichage dans IHM
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 :ccool: 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.
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 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;
} |
voila le code pour afficher dans la list Exercise:
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 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);
}
}
} |
Image IHM