bonjour
je pense que le titre montre le question
j'ai un tableau qui contient 2 lignes fixes et 2 colonnes au minimum et je demande a l'utilisateur avec un bouton s'il veut ajouter une ou des colonnes alors je l'ai ajoute
le probleme c'est que je veux que lorsqu'il arrive a un nombre bien determiné de colonnes : 18
dans ce cas quand il clique pour ajouter une colonne on revient al la ligne et on ajoute 3 lignes avec une colonne et pas 3 lignes avec le nombre de colonne de la table (comme le cas par defaut )
je souhaite que j'ai bien expliqué le probleme
franchemant je n'ai pas essayé car je sais pas d'abord est ce que c'est possible
et je n'ai meme pas une idée
Par contre, au lieu d'ajouter une nouvelle ligne, tu peux créer une nouvelle table avec un nombre de colonnes qui est différent et la placer sous la première table, pour l'utilisateur, il n'y aura qu'une seule table.
Je ne sais pas ce qu'est aa (d'ailleurs, on a vu mieux comme nom) mais je pense que tu devrais faire un repaint et peut être un validate pour que les modifs soient effectuées.
Non, désolé, je n'ai plus le temps de le faire ce soir, je vais te dire ce que j'aurais fait :
Une classe Table qui contient une arrayList de JTable et qui étend JPanel.
Su fais un setLayout(new GridLayout(tables.size(), 0)) et une méthode addRow qui créé à chaque fois une nouvelle JTable.
En même temps, je me dis que ce n'est pas forcément génial comme fonctionnement, je ne comprend pas pourquoi une colonne sans données te poses problème ?? Es tu certain que ce fonctionnement est indispensable ?
aa : c'est un JPanel ou je mets dedans mon jtable pour que le jtable soit centré
avant de le faire le jtable se situait a gauche dans le conteneur du JFrame
alors j'ai trouvé comment afficher voila le nouveau action
mais il m'affiche lenouveau table a coté de l'ancien pas au dessous et il laisse un peu d'espace avant de placer
je veux qu'il se place au dessous et directemnt sous la premier colonne du premier jtable
je sais pas ce qu'il faut que je fais
ca marché mais plusieurs problemes,
dans le scrollpane, avec le gridlayout(tabs.size(),0) il me divise l'espace en deux : alors que il doit etre juste au dessous .....
aussi lorsque la table de dessous vient d'etre ajouté les 2 petites colonnes qui contient s'elargit et prend toute la largeur qui correspond a 10 colonnes du premier table
pour remedier a ces problemes je pense que l'autre idée sera plus efficasse
c'est toi qui me la cité : il s'agit d'ajouter des lignes aux meme largeurs des colonnes (le cas par defaut) et de pas afficher les colonnes dont nous n'avons pas besoins
mais
dans le scrollpane, avec le gridlayout(tabs.size(),0) il me divise l'espace en deux : alors que il doit etre juste au dessous .....
aussi lorsque la table de dessous vient d'etre ajouté les 2 petites colonnes qui contient s'elargit et prend toute la largeur qui correspond a 10 colonnes du premier table
C'est surement à travailler encore un peu, il faudrait bidouiller le modèle pour que les cellules grises ne soient pas éditables, mais le plus gros est fait.