Le Vendredi 20 Septembre 2002 15:22, Zeljko VELAJA a �crit :
> J'ai un JTable dans un JScrollPane :
>
> JTable table = new JTable();
> JScrollPane scroll = new JScrollPane();
>
> ainsi qu'un mod�le � deux colonnes, dont la premi�re n'est pas
> redimensionnable. Mon probl�me est que mon scroll appara�t bien sur la
> barre verticale, mais pas sur la barre horizontale, ce qui emp�che le
> visionnement de certaines donn�es un peu larges. Existe-t-il une solution ?
Voici une petite appli qui pr�sente une JTable dont la premi�re colonne est
de taille fixe, dont la seconde est tr�s grande, et o� l'on voit un ascenceur
horizontal. Opevissehelp.
==>
/*
* SeurTable.java
*
* Created on 21 septembre 2002, 09:59
*/
import javax.swing.*;
import javax.swing.table.*;
/**
*
* @author herve
*/
public class SeurTable extends javax.swing.JFrame
{
private JTable table;
private javax.swing.JScrollPane jScrollPane1;
/** Creates new form SeurTable */
public SeurTable()
{
initComponents();
table = new javax.swing.JTable();
table.setModel(new javax.swing.table.DefaultTableModel(
new Object [][]
{
{"Coucou !", "Qui est l� ?"},
{null, null},
{null, null},
{null, null}
},
new String []
{
"fixe", "autre"
}
));
// *** C'est ici que �a se passe ! ***
// Pour la taille des colonnes, je me d�brouille tout seul
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
// Je fixe la taille de la premi�re
TableColumn colonne1 = table.getColumnModel().getColumn(0);
colonne1.setPreferredWidth(100);
colonne1.setMinWidth(100);
colonne1.setMaxWidth(100);
// Pour la seconde je la fais longue
TableColumn colonne2 = table.getColumnModel().getColumn(1);
colonne2.setPreferredWidth(1000);
// je mets tout dans un scrollpane...
jScrollPane1.setViewportView(table);
// Voila, c'est tout ! Le reste, c'est de la lit�rature...
pack();
}
private void initComponents()
{
jScrollPane1 = new javax.swing.JScrollPane();
addWindowListener(new java.awt.event.WindowAdapter()
{
public void windowClosing(java.awt.event.WindowEvent evt)
{
exitForm(evt);
}
});
getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER);
pack();
}
private void exitForm(java.awt.event.WindowEvent evt)
{
System.exit(0);
}
/**
* @param args the command line arguments
*/
public static void main(String args[])
{
new SeurTable().show();
}
}
<==
A+.
--
SARL diaam informatique - 04 50 77 12 60
Ingenierie, d�veloppements de syst�mes d'information
http://www.diaam-informatique.com