Hallo,
nachfolgnder Code.......
[Java]
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
public class JTableDemo{
public static void main( String[] args ){
// Die Daten für das Table
String[][] data = new String[][]{
{"a", "b", "c", "d"},
{"e", "f", "g", "h"},
{"i", "j", "k", "l"}
};
// Die Column-Titles
String[] title = new String[]{
"A", "B", "C", "D"
};
data[0][0] = "Testvor";
// Das JTable initialisieren
JTable table = new JTable( data, title );
table.setDefaultRenderer(Object.class, new MyCellRenderer()); // Zeile weg, ok
data[0][1] = "Testnach";
JFrame frame = new JFrame( "Demo" );
frame.getContentPane().add( new JScrollPane( table ) );
frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
frame.pack();
frame.setVisible( true );
}
}
[/Java]
....funktioniert, wenn die Zeile table.setDefaultRenderer..... auskommentiert wird, dann sind die Zellen aber nicht zentriert. Wenn die Zeile (so wie jetzt) nicht auskommentiert wird, wird gar nichts dargestellt.
hier noch die andere Klasse MyCellRenderer
[Java]
import java.awt.Component;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableCellRenderer;
public class MyCellRenderer extends JLabel implements TableCellRenderer {
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected,
boolean hasFocus, int row, int column) {
setHorizontalAlignment(DefaultTableCellRenderer.CENTER);
return this;
}
}
[/Java]
sieht jemand den Fehler?
danke Gü
nachfolgnder Code.......
[Java]
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
public class JTableDemo{
public static void main( String[] args ){
// Die Daten für das Table
String[][] data = new String[][]{
{"a", "b", "c", "d"},
{"e", "f", "g", "h"},
{"i", "j", "k", "l"}
};
// Die Column-Titles
String[] title = new String[]{
"A", "B", "C", "D"
};
data[0][0] = "Testvor";
// Das JTable initialisieren
JTable table = new JTable( data, title );
table.setDefaultRenderer(Object.class, new MyCellRenderer()); // Zeile weg, ok
data[0][1] = "Testnach";
JFrame frame = new JFrame( "Demo" );
frame.getContentPane().add( new JScrollPane( table ) );
frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
frame.pack();
frame.setVisible( true );
}
}
[/Java]
....funktioniert, wenn die Zeile table.setDefaultRenderer..... auskommentiert wird, dann sind die Zellen aber nicht zentriert. Wenn die Zeile (so wie jetzt) nicht auskommentiert wird, wird gar nichts dargestellt.
hier noch die andere Klasse MyCellRenderer
[Java]
import java.awt.Component;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableCellRenderer;
public class MyCellRenderer extends JLabel implements TableCellRenderer {
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected,
boolean hasFocus, int row, int column) {
setHorizontalAlignment(DefaultTableCellRenderer.CENTER);
return this;
}
}
[/Java]
sieht jemand den Fehler?
danke Gü