Sie sind auf Seite 1von 2

/*

* To change this template, choose Tools | Templates


* and open the template in the editor.
*/
package javadanphp.blogspot;
import
import
import
import
import

java.awt.Component;
javax.swing.JTable;
javax.swing.table.TableCellRenderer;
javax.swing.table.TableColumn;
javax.swing.table.TableColumnModel;

/**
*
* @author Taopik Ridwan
*/
class AutoResizeTable {
public void sesuaikanKolom(JTable t) {
//cara untuk menyesuaikan kolom dari tabel adalah mengambil
// lebar kolom yang ada kemudian sesuaikan
TableColumnModel modelKolom = t.getColumnModel();
for (int kol = 0; kol < modelKolom.getColumnCount(); kol++) {
int lebarKolomMax = 0;
for (int baris = 0; baris < t.getRowCount(); baris++) {
TableCellRenderer rend = t.getCellRenderer(baris, kol);
Object nilaiTablel = t.getValueAt(baris, kol);
Component comp = rend.getTableCellRendererComponent(t, nilaiTabl
el, false, false, baris, kol);
lebarKolomMax = Math.max(comp.getPreferredSize().width, lebarKol
omMax);
}//akhir for baris
TableColumn kolom = modelKolom.getColumn(kol);
kolom.setPreferredWidth(lebarKolomMax);
}//akhir for kolom
}
}
Cara Menggunakan Untuk menggunakan Class diatas sangat mudah, berikut contoh pen
ggunaanya:
?
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package javadanphp.blogspot;
import
import
import
import
import
import

javax.swing.JFrame;
javax.swing.JScrollPane;
javax.swing.JTable;
javax.swing.ScrollPaneConstants;
javax.swing.UnsupportedLookAndFeelException;
javax.swing.table.DefaultTableModel;

/**
*
* @author Taopik Ridwan
*/
public class Demo {

private JTable tabel;


private String[] judulKolom = {"No", "Nama Blog", "Alamat Blog"};
private Object[][] isiTabel = {
{new Integer(1), "Southeast Asia Tourism Spot", "http://moresoutheastasi
a.blogspot.com/"},
{new Integer(2), "How To Fix", "http://howto-fix-things.blogspot.com/"},
{new Integer(3), "Ikut berbagi tutorial Java dan PHP", "http://javadanph
p.blogspot.com/"},
{new Integer(4), "Kilau Mutiara dari perairan Lombok", "http://kilaumuti
aralombok.blogspot.com/"},
{new Integer(5), "Pusat Kerajinan Akar Wangi Terbaik, unik, variatif", "
http://garutakarwangi.blogspot.com/"}
};
public void runDemo() {
DefaultTableModel model = new DefaultTableModel(isiTabel, judulKolom);
tabel = new JTable(model);
JScrollPane pane = new JScrollPane(tabel, ScrollPaneConstants.VERTICAL_S
CROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
javax.swing.SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new AutoResizeTable().sesuaikanKolom(tabel);
tabel.revalidate();
}
});
JFrame app = new JFrame("Demo Menyesuaikan Lebar Kolom");
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
app.getContentPane().add(pane);
app.setSize(600, 200);
app.setLocationRelativeTo(null);
app.setVisible(true);
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
try {
javax.swing.UIManager.setLookAndFeel(javax.swing.UIManager.getSystem
LookAndFeelClassName());
} catch (ClassNotFoundException | InstantiationException | IllegalAccess
Exception | UnsupportedLookAndFeelException e) {
}
javax.swing.SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new Demo().runDemo();
}
});
}

Das könnte Ihnen auch gefallen