
Originariamente inviata da
andbin
In generale se si mette es. un JTextArea, JTable, JTree come "view" in JScrollPane e (solo quest'ultimo) lo si inserisce in un contenitore ... tutta la gestione dello scrolling è di fatto già automatica e "di serie"
Ecco qui mi sorge un dubbio... io vorrei inserire un componente, come ad esempio un JTable in un JPanel e vorrei che la tabella scrollasse in quanto il JFrame che contiene il tutto è più piccolo della tabella stessa... forse faccio prima a spiegarmi con un esempio:
codice:
import javax.swing.*;
import java.awt.*;
public class Tabella1 extends JPanel
{
public Tabella1()
{
Object[][]cells = {{"0,0","0,1","0,2","0,3"},{"1,0","1,1","1,2","1,3"}};
String[]columnNames = {"Colonna 1", "Colonna 2", "Colonna 3"};
JTable table = new JTable(cells,columnNames);
//perchè adesso lo scroll non scrolla????? ufff
JScrollPane scroll = new JScrollPane(table);
this.add(scroll);
}
}
class TabellinaFrame extends JFrame
{
public TabellinaFrame()
{
this.setSize(200,200);
Container contentPane = this.getContentPane();
Tabella1 tab = new Tabella1();
contentPane.add(tab);
}
public static void main(String[]args)
{
TabellinaFrame f = new TabellinaFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}
... tralasciamo la parte della tabella (lo so che non sto facendo un buon esempio) (ma è stato il primo approccio con JTable... dopo passo a studiare il suo Model).... adesso quello che mi preme è che la tabella si possa vedere per intero anche mettendo resizable(false)