Es qu'il existe une fonction qui permet de redessiner un élément graphique autre que repaint() qui ne marche pas !
En fait, j'ai un tableau qui ne sait mets pas à jour,
un JXTable dans lequel il y a un calcul !
Si vous avez un idée ?
Version imprimable
Es qu'il existe une fonction qui permet de redessiner un élément graphique autre que repaint() qui ne marche pas !
En fait, j'ai un tableau qui ne sait mets pas à jour,
un JXTable dans lequel il y a un calcul !
Si vous avez un idée ?
Salut,
j'ai aussi eu des problèmes avec repaint, la seule solution que j'ai trouvé (je ne sais d'ailleurs toujours pas pourquoi ça ne marchait pas) c'est de rajouter un setVisible(true) après mon repaint.
J'espère que ça va t'aider, ++
Merci mais ca marche pas ! !
Idée suivante ----->
Un petit "s'il vous plaît" ça ne mange pas de pain... :roll:Citation:
Envoyé par fabred
Tu peux aussi chercher par toi même plutot que d'attendre que quelqu'un ai la gentillesse de répondre à ton post si peu chaleureux...
Utilise revalidate :roll:
Salut,
repaint() fonctionne très bien !Citation:
Envoyé par fabred
Donc soit tu l'utilises mal soit ton code est buggé...
Bref un bout de code et un descriptif plus détaillé seraient utiles...
a++
Dsl, mais ca n'ont plus marche pas !
Merci de ton aide !
S'il vous plait, ........:cry:
Salut,
Ta question n'est guère précise, peut-être qu'avec un bout de code nous comprenions mieux ? :roll:
Code:
1
2
3
4
5 public void update(Observable o, Object arg) { this.remplirChamps(); //remplit les champs du tableau this.repaint(); }
Le problème vient surement de remplirChamps()...
a++
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 /* * Remplit les champs du tableau */ private void remplirChamps() { if (getHypothese()!=null && getHypothese().getSaisons().size()>4){ // Recherche de la première année d'étude int a=0; while ( (a<getHypothese().getSaisons().size()) && (getHypothese().getSaisons().get(a).getAnnee()!=getAnnee())){ a++; } for (int i=0;i<5;i++){ this.getJXTabCols().setValueAt(getHypothese().getSaisons().get(i+a).getTerrain().getTotale(), 0, i); this.getJXTabCols().setValueAt(getHypothese().getSaisons().get(i+a).getTerrain().getSAU(), 1, i); this.getJXTabCols().setValueAt(getHypothese().getSaisons().get(i+a).getTerrain().getPropriete(), 2, i); this.getJXTabCols().setValueAt(getHypothese().getSaisons().get(i+a).getTerrain().getFermage(), 3, i); this.getJXTabCols().setValueAt(getHypothese().getSaisons().get(i+a).getTerrain().getMetayage(), 4, i); this.getJXTabCols().setValueAt(getHypothese().getSaisons().get(i+a).getTerrain().getDisposition(), 5, i); this.getJXTabCols().setValueAt(getHypothese().getSaisons().get(i+a).getTerrain().getAutre(), 6, i); } } }
Je me permets de relancer cette conversation car je n'ai toujours pas trouver de solution ! ! !
Solution: ne pas ajouter les données directement dans ta Table mais dans son Model...
C'est la manière standard de procéder en Swing.
Tu peut être plus explicite en me montrant un exemple stp !
http://java.sun.com/docs/books/tutor...able.html#data
Allez, au boulot maintenant ;)
Ouais, je l'ai fait ca mais sans résultat ! ! !
Je suis dégouté, je vois pas d'ou vient le pb :aie:
C'est cela l'Informatique. :mrgreen:Citation:
Envoyé par fabred
Un seul mot : persévérance... :king:
Si tu utilise un composant jtable, il faut obligatoirement créer une classe model de table (une sous classe de AbstractTableModel).
Est-ce que tu as créé un model de table ?
Est-ce que tu as bien implémenter toutes les méthodes ?
J'utilise un JXTable et oui tout à été fait correctement !
Mais le pb vient pas du Table mais de l'observer observable,
j'ai dut oublié quelque chose, mais quoi ?????
Et sans le code ca va être dur de t'aider... (j'ai l'impression d'avoir déjà dit ca)Citation:
Envoyé par fabred
a++
J'ai refait le truc avec un JXTextField, pour que ca soit plus simple a comprendre !
Voici l'observable
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 public class Hypothese extends Observable{ /** * Nom de l'exploitant */ private String nom; /** * Prenom de l'exploitant */ private String prenom; /** * Constructeur par defaut */ public Hypothese() { super(); addObserver(new PaneDossier(null,null)); this.nom = null; this.prenom = null; } public void setNom(String nom) { this.nom = nom; setChanged(); notifyObservers(); } /** * @param prenom the prenom to set */ public void setPrenom(String prenom) { this.prenom = prenom; setChanged(); notifyObservers(); } }