IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Java Discussion :

Comment actualiser jframe


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2
    Par défaut Comment actualiser jframe
    Bonjour, j'ai fait un petit programme comportant un damier utilisant jframe;
    En effet lorsque je veut modifier la position d'un "pion" puis rafraichir le tout grâce à fireTableDataChanged(); j'obtiens

    Partie.java:66: cannot find symbol
    symbol : method fireTableDataChanged()
    location: class Damier
    plateau.fireTableDataChanged();
    ^
    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
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import java.io.*;
    import javax.swing.*;
    import javax.swing.*;
    import javax.swing.table.*;
    import javax.swing.event.*;
    import java.awt.event.*;
    import java.awt.*;
    import java.util.*;
     
     
    //import console.*;
     
     
    public class Damier extends JFrame implements Serializable
    {
     
    	private int taille;
    	public Object[][] data;
    	public Object[][] datasave;
    	public int nbDeCase;
     
    	public Damier(){
    		this.setLocationRelativeTo(null);
    		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		this.setTitle("Damier");
    		this.taille=Clavier.readInt("taille du damier?")+1;
    		this.setSize(taille*28, taille*19); //Adapte la taille d la fenetre au tableau
    		this.data=new Object[taille][taille];
    		this.datasave=new Object[taille][taille]; //tableau servant de sauvegarde
    		this.nbDeCase= taille*taille; 
                    //Les donn?es du tableau
    		//Object[][] data = new Object[taille][taille];
    	        //Les titres des colonnes
    		Object  title[];
    		title=new Object[taille];
    		for(int a=0;a<taille;a++)
    			title[a]="";
    		JTable tableau = new JTable(data, title);
    		/*remplis la premiere colone et la premiere ligne afin
    		de reperer les coordonn?es des cases*/
    		for(int i = 0; i < data.length; i++){
    		data[i][0] = i;    
    				}
    		for(int j = 0; j < taille; j++){
    		data[0][j] = j;    
    				}
                    //On ajoute notre tableau ? notre contentPane dans un scroll
                    //Sinon les titres des colonnes ne s'afficheront pas ! !
     
    		for(int k=1;k<taille;k++)
    			for(int l=1;l<taille;l++)
    				data[k][l]="";
    		this.getContentPane().add(new JScrollPane(tableau));
    	}
     
    	public void setTaille(int taille)
    	{
    		this.taille=taille;
    	}
    	public int getTaille()
    		{return taille;}
     
     
    	public void place(int col, int lin){
    			this.data[col][lin]="test";
    	}
     
     
    }
    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
    import java.util.Random;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import java.io.*;
    import java.*;
     
    public class Partie
    	{
    	public static void main(String[] args)
    		{
    			Menu menu=new Menu();
    			int choix=0;
    			int mouv;
    			while(choix<1 || choix>2)
    				choix=Clavier.readInt("Que voulez-vous faire?\n1-Démarrer une nouvelle partie\n2-Charger une partie sauvegardée\n");
    			switch(choix)
    			{
    				case 1:
     
    					Damier plateau=new Damier();						//initialisation Damier
    					Rocher blocage=new Rocher();						//initialisation Rocher
    					while(blocage.getNombreRocher()<0 || blocage.getNombreRocher()>(plateau.getTaille()*plateau.getTaille())/10)
    						blocage.init();
    					int centre=plateau.getTaille()/2;
    					plateau.data[centre][centre]="PION";
    					//placement Fée
    					for(int i=0;i<blocage.getNombreRocher();i++)		//placement Rochers
    						{
    						Random h=new Random();
    						Random d=new Random();
    						int hasard=1+h.nextInt(plateau.getTaille()-1);
    						int destin=1+d.nextInt(plateau.getTaille()-1);
    						if(plateau.data[hasard][destin]=="")
    							plateau.data[hasard][destin]="ROC";
    						else
    							i--;
    						}
     
    					plateau.setVisible(true);						//affichage Damier
    					mouv=Clavier.readInt("mouvement");
    					if(mouv == 1){
    						plateau.data[centre][centre]="";
    						plateau.data[centre+1][centre+1]="pion";
     
    					}
     
    					break;
    				case 2:
    					String nom=Clavier.readString("nom du fichier à charger:");
    					menu.charger(nom);
    					break;
    			}
     
    		}
    	}

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    ta classe Damier n'a tout simplement pas de méthode "fireTableDataChanged"

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2
    Par défaut
    ok (noob spotted), mais je suis sensé faire quoi avec ma méthode, elle est pas déjà défini dans javax.swing.table.AbstractTableModel ?

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par triks Voir le message
    ok (noob spotted), mais je suis sensé faire quoi avec ma méthode, elle est pas déjà défini dans javax.swing.table.AbstractTableModel ?
    Si mais ta classe n'en hérite pas, tu veux atteindre quoi avec cette méthode? notifier le JTable qui se trouve dans ta JFrame? Dans ce cas, il faut garder une référence à cette JTable et appeler cette méthode sur cette référence, pas sur ta classe.

Discussions similaires

  1. comment actualiser une page web automatiquement ?
    Par safadev dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/09/2006, 23h34
  2. Comment actualiser le contenu d'un répertoire
    Par nbelg27 dans le forum Access
    Réponses: 9
    Dernier message: 28/04/2006, 10h22
  3. Comment actualiser l'image de curseur
    Par Xavier dans le forum C++Builder
    Réponses: 1
    Dernier message: 16/01/2006, 15h59
  4. [PHP] Comment actualiser une frame à partir d'une autre ?
    Par pekka77 dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 28/10/2005, 12h03
  5. Réponses: 6
    Dernier message: 27/10/2005, 21h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo