hi
ich versuch eine JTable so darzustellen, dass ich auch Zeilenumbrüche drin haben darf, aber irgendwas klappt nicht^^
meine render-class
und meine hauptclass
data und head sind Object-arrays und angezeigt wird auch alles, aber eben nicht als textArea... oder muss ich in die strings etwa noch nen "\n" oder sowas einfügen??
und zudem wollte ich noch, dass man die spalten-breite nicht verändern kann.. also dass sie fest sein... wie geht das denn??
danke für die hilfe...
ich versuch eine JTable so darzustellen, dass ich auch Zeilenumbrüche drin haben darf, aber irgendwas klappt nicht^^
meine render-class
Java:
class Renderer extends JTextArea implements TableCellRenderer{
public Renderer(){
setOpaque( true );
}
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column){
this.setWrapStyleWord(true);
this.setLineWrap(true);
this.setText((String) value);
this.setSize(100, 32);
return this;
}
}
und meine hauptclass
Java:
//...
JTable jtab = new JTable();
jtab.setBounds(0, 16, 500, 32);
jtab.getTableHeader().setBounds(0, 0, 500, 16);
pa2.add(jtab.getTableHeader());
pa2.add(jtab);
jtab.setModel(new DefaultTableModel(data,head) {
public boolean isCellEditable(int rowIndex, int columnIndex) {
return false;
}
});
jtab.setDefaultRenderer(JTextArea.class, new Renderer());
f1.repaint();
//...
data und head sind Object-arrays und angezeigt wird auch alles, aber eben nicht als textArea... oder muss ich in die strings etwa noch nen "\n" oder sowas einfügen??
und zudem wollte ich noch, dass man die spalten-breite nicht verändern kann.. also dass sie fest sein... wie geht das denn??
danke für die hilfe...