package test;
import java.awt.Component;
import java.awt.Graphics;
import java.awt.Polygon;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
public class MyCellRenderer extends DefaultTableCellRenderer{
private int dreieck;
private int[] xPoints0 = { 0, 0, 50 };
private int[] yPoints0 = { 0, 50, 50 };
private int[] xPoints1 = { 50, 0, 50 };
private int[] yPoints1 = { 0, 50, 50 };
private int[] xPoints2 = { 0, 0, 50 };
private int[] yPoints2 = { 50, 0, 0 };
private int[] xPoints3 = { 0, 50, 50 };
private int[] yPoints3 = { 0, 0, 50 };
private Polygon p0 = new Polygon(xPoints0, yPoints0, 3);
private Polygon p1 = new Polygon(xPoints1, yPoints1, 3);
private Polygon p2 = new Polygon(xPoints2, yPoints2, 3);
private Polygon p3 = new Polygon(xPoints3, yPoints3, 3);
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus,
int row, int column) {
Component c = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
if ((int)(table.getValueAt(row, column))== 0) {
dreieck=0;
this.paint(c.getGraphics());
} else if ((int)(table.getValueAt(row, column))== 1) {
dreieck=1;
this.paint(c.getGraphics());
}else if ((int)(table.getValueAt(row, column))== 2) {
dreieck=2;
this.paint(c.getGraphics());
} else if ((int)(table.getValueAt(row, column))== 3) {
dreieck=3;
this.paint(c.getGraphics());
}
return c;
}
@Override
public void paint(Graphics g) {
super.paint(g);
if (dreieck == 0) {
g.drawPolygon(p0);
} else if (dreieck == 1) {
g.drawPolygon(p1);
} else if (dreieck == 2) {
g.drawPolygon(p2);
} else if (dreieck == 3) {
g.drawPolygon(p3);
}
}
}