Hallo,
meine JTable benutzt folgenden Renderer für ihren Header:
createVLabel erzeugt mir einen vertikalen Text. Jetzt ist der Text, also eigentlich das JLabel, höher als der TableHeader, was dazu führt, dass er einfach abgeschnitten wird. Der Header ist dabei so groß wie die erste Spaltenüberschrift (ich weiß nicht, ob das Zufall ist?).
Ich habe schon versucht, im Renderer die Höhe irgendwie anzupassen, aber setSize und alle anderen Versuche hatten keinerlei Auswirkungen Hat jemand 'ne Idee, wie ich den Header an die Höhe der JLabels anpassen kann?
meine JTable benutzt folgenden Renderer für ihren Header:
Java:
public class HeaderCellRenderer extends DefaultTableCellHeaderRenderer {
private static final long serialVersionUID = 1L;
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
createVLabel((String)value);
setBorder(UIManager.getBorder("TableHeader.cellBorder"));
setOpaque(true);
return this;
}
private void createVLabel(String caption) {
setIcon(new VTextIcon(this, caption, VTextIcon.ROTATE_LEFT));
setFont(getFont().deriveFont(Font.PLAIN));
setVerticalAlignment(SwingConstants.BOTTOM);
}
}
createVLabel erzeugt mir einen vertikalen Text. Jetzt ist der Text, also eigentlich das JLabel, höher als der TableHeader, was dazu führt, dass er einfach abgeschnitten wird. Der Header ist dabei so groß wie die erste Spaltenüberschrift (ich weiß nicht, ob das Zufall ist?).
Ich habe schon versucht, im Renderer die Höhe irgendwie anzupassen, aber setSize und alle anderen Versuche hatten keinerlei Auswirkungen Hat jemand 'ne Idee, wie ich den Header an die Höhe der JLabels anpassen kann?