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

Composants Java Discussion :

JTable trop grand?


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut JTable trop grand?
    Bonsoir,j'ai une erreur du type:
    Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException:
    1000

    Avec le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    for(int i=0;i<nb;i++){
    				System.out.println("nb="+nb);
    			System.out.println("i="+i);
    			Table_Vente.setValueAt(tab_vente[i][0],i,0);
    			Table_Vente.setValueAt(tab_vente[i][1],i,1);
    			Table_Vente.setValueAt(tab_vente[i][2],i,2);
    			Table_Vente.setValueAt(tab_vente[i][3],i,3);
    			Table_Vente.setValueAt(tab_vente[i][4],i,4);
    			Table_Vente.setValueAt(tab_vente[i][5],i,5);
    			Table_Vente.setValueAt(tab_vente[i][6],i,6);
    			Table_Vente.setValueAt(tab_vente[i][7],i,7);
    }
    Sachant que nb est environ égal à 4000;
    Ce code fonctionne bien quand nb est environ à 500.

    Merci d'avance

  2. #2
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut
    Ca fonctionne jusqu'à nb=1000,je viens de vérifier.
    Pourquoi ca ne fonctionne pas quand nb>1000 svp?

  3. #3
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut
    En fait j'ai fait un model de table comme celui ci:
    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
     
    class ModelTable2 extends AbstractTableModel{
     
    	int nbl=0;
    	public ModelTable2(int nb){
     
    	nbl=nb;
    	System.out.println(nbl);
     
     
     
    	}            
     
    	Object[][] rowData =new String[nbl][8];
     
    	public String getColumnName(int col) {
     
    		String columnNames[] = {"Nom","Console","Occ/Nf","Quantité","Prix","Total","Date","Client"};
     
            return columnNames[col].toString();
     
        }
        public int getRowCount() { 
     
     
        return nbl; 
     
        }
     
        public int getColumnCount() { return 8; }
     
        public Object getValueAt(int row, int col) {
     
            return rowData[row][col]; 
     
        }
     
        public boolean isCellEditable(int row, int col){ return false; }
     
        public void setValueAt(Object value, int row, int col) {
     
           	rowData[row][col] = value;
     
        	fireTableCellUpdated(row, col);
     
        }
     
     
     
    }
    Le problème c'est qu'il naccepte pas la variable "nbl" alors qu'à la compilation, tout ce passe trés bien.Si à la place de "nbl" je met 10000,ca fonctionne bien.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 30
    Par défaut
    N'y aurait-il pas une demande de valeur en dehors de ton tableau ?

  5. #5
    Membre éclairé Avatar de nicotine002
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    577
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 577
    Par défaut
    En fait à cette endroit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     Object[][] rowData =new String[nbl][8];
    Si je met 10000 à la place de "nbl",ca fonctionne. Mais si je met nbl, ca ne fonctionne pas alors que nbl vaut bien 10000.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 30
    Par défaut
    Ton tableau est créé avant que tu change la valeur de ton nbl vu qu'il n'est pas créé dans une méthode mais directement dans ta class.

    De cette manière, cela devrai fonctionner.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    class ModelTable2 extends AbstractTableModel{ 
     
    int nbl=0; 
    Object[][] rowData;
     
    public ModelTable2(int nb){ 
     
          nbl=nb; 
          System.out.println(nbl); 
          rowData =new String[nbl][8];
     
    }

Discussions similaires

  1. [JTable] dimension trop grande
    Par Sp4ce dans le forum Composants
    Réponses: 1
    Dernier message: 06/11/2007, 10h55
  2. Taille d'archive trop grande
    Par mick84m dans le forum Shell et commandes GNU
    Réponses: 14
    Dernier message: 12/05/2005, 16h39
  3. tableau trop grand ?
    Par Praxe dans le forum C++
    Réponses: 17
    Dernier message: 17/03/2005, 14h14
  4. modélisation d'une base : table trop grande
    Par Shabata dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 22/11/2004, 11h44
  5. Surface trop grande
    Par Black_Daimond dans le forum DirectX
    Réponses: 1
    Dernier message: 18/01/2003, 03h02

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