Bonjour a tous,
voila mon probleme :
j'essaie d'afficher une jtable construite a partir d'un tableau d'étapes dont la structure est la suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
int num;//numero d'étape
String desc;//description de l'étape
String res;//resultat attendu
et ils y a plusieurs pbs que je n'arrive pas a resoudre :
1/ il faudrait que la 1° colonne et les 2 autres n'aient pas la meme largeur
2/ les champs desc et res sont enregistré avec plusieurs lignes, mais l'affichage dans la cellule ne se fait que sur une seule ligne au centre de la cellule
3/ je n'arrive pas a faire de scrollbar sur les cellules (j'arrive à le faire apparaitre, mais je ne peut pas l'utiliser, et si je double clique sur la cellule, le text apparait, toujours sur une seule ligne et dans une cellule élargie)

donc en fait ce que je voudrais savoir c'est d'une part comment redimensionner une colonne et d'autre part comment faire pour qu'une cellule se comporte comme un JTextArea.

pour info, voici le code de mon cellrenderer :
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
 
public class MyCellRenderer extends DefaultTableCellRenderer {
 
    public MyCellRenderer() { 
        super(); 
     } 
 
     public Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean hasFocus,int row,int col){
 
         //System.err.println("value = "+value.toString());
         Component c = super.getTableCellRendererComponent( table, value,isSelected,hasFocus,row,col);
         //System.out.println(value+" hf :"+hasFocus+" is : "+isSelected);
         if(!isSelected){ //on grise une ligne sur 2 par soucis de visibilité
            if(row%2 != 0) 
                c.setBackground(Color.LIGHT_GRAY);
            else 
                c.setBackground(Color.WHITE); 
         } 
         if(col!=0){
             c.setSize(new Dimension(300, 50));
         }
         else{
             c.setSize(new Dimension(30, 50)); 
         }
         /*c.setFocusable(true);
         JScrollPane jsp=new JScrollPane(c,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED ,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);  //permet l'affichage de scrollbar dans une cellule*/
 
         return c; 
      } 
 
 
}
merci d'avance pour vos idées