class CheckCellRenderer extends JCheckBox implements TableCellRenderer {
protected static Border m_noFocusBorder; public CheckCellRenderer() {
super();
m_noFocusBorder = new EmptyBorder(1, 2, 1, 2);
setOpaque(true);
this.setHorizontalAlignment(SwingConstants.CENTER);
setBorder(m_noFocusBorder);
} public Component getTableCellRendererComponent(JTable table,
Object value, boolean isSelected, boolean hasFocus, int row, int column) { if (value instanceof Boolean) {
Boolean b = (Boolean) value;
System.out.println("check cell renderer" + row++);
setSelected(b.booleanValue());
}
setBackground(isSelected && !hasFocus ?
table.getSelectionBackground() : table.getBackground());
setForeground(isSelected && !hasFocus ?
table.getSelectionForeground() : table.getForeground());
setFont(table.getFont());
setBorder(hasFocus ? UIManager.getBorder("Table.focusCellHighlightBorder") : m_noFocusBorder); return this;
}
}
protected static Border m_noFocusBorder; public CheckCellRenderer() {
super();
m_noFocusBorder = new EmptyBorder(1, 2, 1, 2);
setOpaque(true);
this.setHorizontalAlignment(SwingConstants.CENTER);
setBorder(m_noFocusBorder);
} public Component getTableCellRendererComponent(JTable table,
Object value, boolean isSelected, boolean hasFocus, int row, int column) { if (value instanceof Boolean) {
Boolean b = (Boolean) value;
System.out.println("check cell renderer" + row++);
setSelected(b.booleanValue());
}
setBackground(isSelected && !hasFocus ?
table.getSelectionBackground() : table.getBackground());
setForeground(isSelected && !hasFocus ?
table.getSelectionForeground() : table.getForeground());
setFont(table.getFont());
setBorder(hasFocus ? UIManager.getBorder("Table.focusCellHighlightBorder") : m_noFocusBorder); return this;
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货