Hallo zusammen,
ich habe eine JTable die (zum testen) aus 4 Spalten und 2 Zeilen besteht. In der ersten Spalte stehen Strings, in den restlichen Spalten boolean-Werte die als Checkboxen gerendert werden.
Nun möchte ich die Farben der Zellen ändern, in denen die Checkboxen stehen. Die String-Felder stellen kein Problem dar.
Mein TableModel:
	
	
	
	
	
		
	
Mein Renderer:
	
	
	
	
	
		
	
So sollten beispielsweise Zeile 1 grün und Zeile 2 rot dargestellt werden. Es klappt aber nur mit der "String-Spalte", nicht mit den Checkboxen... was mache ich falsch?
Danke und Gruß,
Jens
			
			ich habe eine JTable die (zum testen) aus 4 Spalten und 2 Zeilen besteht. In der ersten Spalte stehen Strings, in den restlichen Spalten boolean-Werte die als Checkboxen gerendert werden.
Nun möchte ich die Farben der Zellen ändern, in denen die Checkboxen stehen. Die String-Felder stellen kein Problem dar.
Mein TableModel:
		Java:
	
		private class UebersichtTableModel extends DefaultTableModel {
		private static final long serialVersionUID = -2901586710535614349L;
		public UebersichtTableModel(String[] spaltentitel, int i) {
			super(spaltentitel, i);
		}
		
		public Class getColumnClass(int columnIndex) {
			if (columnIndex > 0)
				return Boolean.class;
			else
				return String.class;
		}
		
		public boolean isCellEditable(int row, int col) {
			return false;
		}
	}
	Mein Renderer:
		Java:
	
		private class UebersichtTableCellRenderer extends DefaultTableCellRenderer {
		static final long serialVersionUID = -7684107825328207439L;
		public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
	        super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
	        
	        if (row == 0)
	        	setBackground(Color.GREEN);
	        if (row == 1)
	        	setBackground(Color.RED);
	        
	        return this;
		}
	}
	So sollten beispielsweise Zeile 1 grün und Zeile 2 rot dargestellt werden. Es klappt aber nur mit der "String-Spalte", nicht mit den Checkboxen... was mache ich falsch?
Danke und Gruß,
Jens