Perdu avec une linkedlist à passer de classe en classe

Perdu avec une linkedlist à passer de classe en classe - Java - Programmation

Marsh Posté le 28-03-2009 à 16:57:18    

Salut tout le monde,
j'explique mon problème.
 
J'ai des notes, placées sur une partition.
Pour pouvoir sauvegarder la partition en cours, à chaque ajout d'une nouvelle note, je sauvegarde la position de celle-ci ainsi que son type :
 

Code :
  1. public class NotePosition {
  2.  
  3.    private int x,  y,  noteType;
  4.  
  5.    public NotePosition(int x, int y, int noteType) {
  6.        this.x = x;
  7.        this.y = y;
  8.        this.noteType = noteType;
  9.    }
  10. }


 
Et ensuite je l'ajoute dans une liste chainée :
 

Code :
  1. static LinkedList<NotePosition> notesPos = new LinkedList<NotePosition>();
  2.  
  3. // On sauvegarde les coordonnées ainsi que le type de note
  4. NotePosition sauvegarde = new NotePosition(x, y, cursorChanged);
  5. // On l'ajoute à la liste chainée
  6. notesPos.add(sauvegarde);


 
On a donc pour le moment deux classes, ma classe NotePosition et la classe Editeur qui contient la liste chainée.
 
Lorsque l'utilisateur choisis de sauvegarder la partition, cela passe d'abord par la classe gérant le menu, et plus particulièrement cette  
 

Code :
  1. if(e.getActionCommand().equals("Sauvegarder" )) {
  2.      Save sv = new Save(frame);
  3. }


 
Vient ensuite la classe Save :
 

Code :
  1. public class Save {
  2.  
  3.    public Save(Frame parent) {
  4.  
  5.        FileDialog fenetre = new FileDialog(parent, "Sauvegarder", FileDialog.SAVE);
  6.  
  7.        fenetre.setVisible(true);
  8.        // On récupère le nom du fichier
  9.        String fn = fenetre.getFile();
  10.        // On créé le fichier
  11.        File f = new File(fn);
  12.        try {
  13.            FileWriter fw = new FileWriter(f);
  14.        } catch (Exception ex) {
  15.            System.out.println("Une erreur est survenue !" );
  16.        }
  17.        // On écrit dedans
  18.        //fw.write();
  19.    }
  20. }


 
Arrivé à ce niveau là, je suis sensé parcourir toute ma liste chainée pour récupérer les coordonnées de la note ainsi que son type.
Or, je ne sais pas comment faire pour accéder à ma liste chainée pour le moment.


---------------
Twitter
Reply

Marsh Posté le 28-03-2009 à 16:57:18   

Reply

Marsh Posté le 28-03-2009 à 17:15:53    

1) Une classe pour save() ça me parait étrange, tu peux pas faire une méthode ? (l'objet NotePosition me parait bizarre aussi mais bon)

 

2) pour ta question il suffit de passer ta liste au constructeur de Save. Si c'est pas possible tu peux faire un
"public static LinkedList<NotePosition> getnotesPos()"
 dans ton Editeur pour accéder à cette liste de n'importe où.


Message édité par astrojojo le 28-03-2009 à 17:18:02
Reply

Marsh Posté le 28-03-2009 à 22:02:08    

1) Le problème, c'est que cette méthode, je la met dans quelle classe ? Ca va vite devenir le bordel.
NotePosition, c'est pour pouvoir mettre plus d'une donnée à la fois dans ma liste chainée, c'est comme ça qu'il faut procéder je crois.
 
2) J'ai déjà ce type de déclaration dans mon éditeur, mais vu que Save n'est pas appelé dans celui-ci, je ne pourrai pas y accéder, si ?


---------------
Twitter
Reply

Marsh Posté le 28-03-2009 à 22:24:22    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed