Ich habe ein Tabelle mit einem eigenen TableCellRenderer.
Mit diesem Renderer wir ein Icon und Label in der Zelle wiedergegeben.
Nun möchte ich dem JLabel eine andere Hintergrundfarbe als dem Jpanel geben. Aber das geht anscheinend nicht.
Hier ein Codeauszug!
Mit diesem Renderer wir ein Icon und Label in der Zelle wiedergegeben.
Nun möchte ich dem JLabel eine andere Hintergrundfarbe als dem Jpanel geben. Aber das geht anscheinend nicht.
Hier ein Codeauszug!
Code:
private class test implements TableCellRenderer{
public LinkedHashMap<String, String> m_map = new LinkedHashMap<String, String>();
private JPanel panel = new JPanel(new BorderLayout());
private JLabel label = new JLabel("", JXLabel.CENTER);
private JLabel arrow = new JLabel((Icon) null, JXLabel.CENTER);
LinkedHashMap<Integer, LinkedHashMap<String, String>> positions;
private Icon in_frontIcon = new ImageIcon(getClass().getResource("/InoPro/icons/16x16/actions/agt_back.png"));
public test() {
panel.add(label);
panel.add(arrow, BorderLayout.EAST);
}
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
//Hintergrund
panel.setBackground(Color.cyan);
label.setText("-");
label.setOpaque(true);
label.setBackground(Color.RED);
label.setBorder(new LineBorder(Color.BLACK, 1));
arrow.setIcon(in_frontIcon);
return panel;
}
}