begin process at 2012 02 13 14:32:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Général

 > 

Rafraichissement d'un JTable ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Rafraichissement d'un JTable ?

samedi 23 juin 2007 à 04:45:25 | Rafraichissement d'un JTable ?

Palleas_44

Bonjour :]

Dans le cadre d'un projet personnel, je dois creer une interface graphique en java pour une application. C'est pas très clair effectivement... Bref en fait ce que je cherche à faire c'est de "rafraichir" un JTable suivant les données d'une classe héritant de Vector, je ne voyais pas comment modeliser ca, on m'a conseillé de regenerer le JTable toutes les x secondes. J'ai donc fait comme ca (c'est peut être un chouillat incohérent ?) :

- une classe Datas qui herite de Vector, je fais comme ca car elle sera modifiée par la suite par le "commanditaire" donc je prefere que les données soient issuues d'une classe, c'est pour moi le plus évolutif/adaptatif, corrigez moi si j'ai tort
- une classe Headers qui definit l'en tete du tableau
- une classe Table qui hérite de JPanel, dans laquelle je place un JScrollPane, dans lequel se trouve mon tableau
    - cette classe, lors de l'instanciation, appele les données de la classe Datas, et celles de la classe Headers pour former le tableau (étant donné que JTable peut prendre deux Vector en parametre...)

Le probleme est donc le suivant : je veux rafraichir mon JTable ! J'ai fait comme ca :

public class Principale extends JApplet implements Runnable{
    private static final long serialVersionUID = 8385078832438623032L;
    private Table table;
    private Thread thread;
   
    public void init() {
        this.table  = new Table();
        thread = new Thread(this);
        setSize(new Dimension(800,400));
        getContentPane().add(table);
    }
   
    public void run() {
        while (thread != null) {
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println("Thread :]");
            this.table = new Table();
           
        }
    }
   
    public void start() {
        super.start();
        thread.start();
    }
}

MAIS comme vous pourrez le constater (ou pas) ca ne marche pas, je pensais que ca le ferais puisque passage de la variable table par référence, tout ca tout ca, mais au final le tableau n'est pas modifié...  Donc si jamais quelqu'un sait comment regénérer mon tableau ou plus largement comment rafraichir le contenu d'un tableau... J'ai cru entendre parler de AbstractTableModel mais je ne sais pas, de la meme maniere j'ai entendu parlé des écouteurs mais comme je ne connais pas la structure exact de la classe Datas, j'ai preferé attendre de voir avec le "commanditaire" pour me pencher la dessus :/

Merci d'avance
Palleas
samedi 23 juin 2007 à 16:22:41 | Re : Rafraichissement d'un JTable ?

GodConan

oulalal!!! ;o) en effet il manque pas mal de chose ... ;o) Et surtout si il a un probleme il n est surment pas dans ce morceau de code... ;o)
Premierement ;o) es tu obligé de passer par une applet?? si oui temps pis ;o) ca serai plus confortable en appli ;o) mais bon autrement ;o) le principe est asser simple ;o)....

Déja tu parts sur un bon principe isolé les données des ihm (interface Homme/Machine) ensuite un client pour modifier les données et un pour les lire
le second devant etre à l ecoute des modifs du premier ;o) (si j ai bien compris!!? )
Rien que de poser le probleme ainsi ;o) à l évidence ;o) un listener ;o) est nécéssaire ;o) sur la class Data .. ;o) de meme qu un model de donnée pour la JTabe qui pourra directement prendre en argument soit la class Data ;o) soit pour faire plus evolutif une interface (contenant toute les methode utile, implementer par un model référensant Data biensur, mais la, je m emporte!)   ;o)
Ensuite donc c est le listener qui devras rafraichier la JTable (ou Table, m enfin!, ca devrait ce faire tout seul) ;o) c est magique le JAVA ,o)

Bonne chance ...

[purple]GodConan[/purple][:o)]
samedi 23 juin 2007 à 16:28:44 | Re : Rafraichissement d'un JTable ?

Palleas_44

Ok donc je vais devoir me penser sur les listeners apparement et revoir un petit peu mon truc dans ce cas la ^^
J'avoue qu'en bon débutant il y a certaines choses que je ne comprend pas dans ton message :
- "Ce serait plus confortable en appli" : j'utilise un Japplet parce que je ne connais que ca, enfin ca et JFrame pour utiliser des fenetres j'avoue que je sais pas trop la différence avec une appli, c'est quoi concretement ? ^^
- Pour ce qui est du fraichissement du JTable en lui meme, cela se fera grace à AbstractTableModel si j'ai bien compris ?

Je reviendrais...
dimanche 24 juin 2007 à 23:11:12 | Re : Rafraichissement d'un JTable ?

GodConan

 ;o) une appli par oposition à une applet ;o) c est a dire que tu utilise une JFrame ;o) plutot qu une JApplet voilà tout; en mme temps si ca tourne ds une JApplet ca tournera aussi dans une JFrame ;o) alors que l inverse n est pas vrai...
bon courage ;o) 

 

GodConan ;o)


Cette discussion est classée dans : table, tableau, classe, thread, jtable


Répondre à ce message

Sujets en rapport avec ce message

[Java] Rafraichir Tableau [JTable] [ par sarahjtm ] [b]Bonjour[/b], Je dispose d'un tableau dans mon onglet "[b]Historique[/b]" dont en voici le code : [b]Code :[/b] [code=java] Defaul probleme avec l'affichage des nom des colonnes d'un jtable [ par pressilla ] o fait pour clôturer ma formation, dans mon stage de fin d'étude on m'a demander de réaliser une application en java, il s'agit d'une "Gestion des pro les noms des colonnes ne s'affichent pas dans la jtable [ par pressilla ] bonjour à tous , o fait, je suis entrain de réaliser une application en java, il s'agit d'une "Gestion des projets" , je m'explique : j'ai réalisé une récupérer les valeurs d'une classe dans une autre classe [ par ulysse00 ] bonsoir je cherche à récupérer les valeurs des cellules d'une ligne de table d'une classe dans une autre classe si je click sur la souri voila mon co vector -to- table [ par infogoss ] bonjour selon mes connaissance un vector c'est un tableau.[^^confus2] comment peut on copier le contenue un vector a un tableau ? moi j'ai une foncti Après l'ajout de colonnes dans ma Table [ par jokermed02 ] Slt à tous, Après avoir construit une JTable comme suit: JTable MaTable =new JTable(); MaTable.setModel(new DefaultTableModel(new Object [N][1], new S jtable,jcombobox et jdbc [ par georedhy ] bjr et merci pr ceux qui pourrons m'aide svp . mon blem est que soit 2 table ayant presque le mm nbre de chp ds ma bdd: comment enregistre un jtable s Comment attribuer une nouvelle police dans un titre de colonne (JTable, JAVA) [ par freelikeabird ] Bonjour à tous. Dans le cadre d'un projet, j'ouvre un "Popup" qui contient une JTable. J'aimerais bien "setter" une nouvelle police au titre de ma col jtable [ par johnjjj ] Bonjour je souhaite créer une jtable 3 colonne Les deux première colonne contient des zone de texte et la troisième contient combobox Et Les l Colorier Ligne JTable [ par dammex ] Bonjour, je souhaite afficher d'une couleur rouge tout une ligne d'un Jtable. Pour cela j'ai dans une classe écrit la méthode suivante: public stati


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,340 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales