Newer
Older
AnchorGarden_M / src / main / java / jaist / css / covis / JTableStripeRenderer.java
package jaist.css.covis;

import java.awt.Color;
import java.awt.Component;

import javax.swing.BorderFactory;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;

//http://terai.xrea.jp/Swing/StripeTable.html
public class JTableStripeRenderer extends DefaultTableCellRenderer {

	private static final long serialVersionUID = 5385937199280359421L;
	private static final Color ec = new Color(240, 240, 255);
	public JTableStripeRenderer() {
		super();
		setOpaque(true);
		setBorder(BorderFactory.createEmptyBorder(0,5,0,5));
	}
	public Component getTableCellRendererComponent(
			JTable table, Object value,
			boolean isSelected, boolean hasFocus,
			int row, int column) {
		super.getTableCellRendererComponent(table, value, 
				isSelected, hasFocus, row, column);
		if(isSelected) {
			setForeground(table.getSelectionForeground());
			setBackground(table.getSelectionBackground());
		}else{
			setForeground(table.getForeground());
			setBackground((row%2==0)?ec:table.getBackground());
		}
		setHorizontalAlignment((value instanceof Number)?RIGHT:LEFT);
		return this;
	}
}