Bonjour
Je voudrais savoir s'il y a possibilité de créer dynamiquement
Une JTable, c'est à dire on ne connait pas le nombre de ligne et de colonne à l'avance et on les passent en paramètre par la suite
Merci pour vos réponses
Bonjour
Je voudrais savoir s'il y a possibilité de créer dynamiquement
Une JTable, c'est à dire on ne connait pas le nombre de ligne et de colonne à l'avance et on les passent en paramètre par la suite
Merci pour vos réponses
Oui heureusement même
JTable(int NbrLignes, int NbrColonnes) : création d'une table vide selon les tailles spécifiés
Ou alors je n'ai pas bien compris ton problème
Quand après la création de la JTable??Envoyé par sandytarit
Oui en fait ca serait pour passer les colonnes et ligne mais après la création de la jtable
Une fois créée, je ne pense pas.
Il te suffit juste de créer un tableau de taille minimale et ensuite une fois que tu as récupéré tes valeurs pour les colonnes et les lignes, de faire une boucle pour créer les colonnes et les lignes en plus.
Qu'en dis tu?
voila, j'espère que ca pourra t'aider
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 private JTable _detail; public TableDescription(TableWizardControler controler) { _controler=controler; initPanel(); } private void initPanel() { DefaultTableModel modele = _controler.getDetailModel(); _detail = new JTable(modele); _criteriacontainer = new JScrollPane(_detail); }
Ta ta ta !
Ce que tu cherches, ça s'appelle un TableModel ! Voir ici, rubrique "creating a table model".
Ca c'est en simplifié, après tu dois étendre la classe DefaultTableModel pour ajouter tes propres colonnes, et tout et tout et tout.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 JTable table = new JTable() ; // Création [...] // Tu fais tout ce que tu veux, la table est vide DefaultTableModel model = new DefaultTableModel() ; model.addRow(...) // Ajout des lignes table.setModel( model ) ;// Magique, la table est remplie !
Je ne pense pas que se soit idéeal de travailler comme ça.
Regarde plutôt du coté de AbstractTableModel qui définit l'ensemble du contenu de ta taille.
Tu peux faire :
et puis ensuite travailler avec ton AbstractTableModel
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 AbstractTableModel atm = new AbstractTableModel(); JTable jTable = new JTable(); jTable.setModel(atm)![]()
T'as été plus vite que moi
Et tout juste utilise plutôt le DefaultTableModel ça marchera mieux![]()
Sauf queEnvoyé par cheprod
ça marchera pas, la classe est abstraite !
Code : Sélectionner tout - Visualiser dans une fenêtre à part AbstractTableModel atm = new AbstractTableModel();
Donc en résumé, utilise la méthode de cheprod mais avec un DefaultTableModel.
quand je fais:
DefaultTableModel model = new DefaultTableModel() ;
éclipse ne me propose aucune méthode
model.
il ne me propose pas addrow ni aucune autre
Code : Sélectionner tout - Visualiser dans une fenêtre à part import javax.swing.table.DefaultTableModel ;
![]()
pas grave c'est la fin de la journée, vivement le week-end![]()
sinon pourquoi addRow attend un tableau d'objet
je croyais qu'avec addRow on pouvait rajouter une ligne vide
Les colonnes du tableau d'objet correspondent aux colonnes du JTable.Envoyé par sandytarit
Ok merci, la JTable ca doit être un des composants les
moins faciles à mettre en oeuvre rapidement (comparé à un Jbutton)
Comparé à un JButton, oui ! Mais une fois que tu connais les classes qui vont bien et la méthode qui va avec, ça va tout seulEnvoyé par sandytarit
![]()
Partager