Java 응용 프로그램에서 색을 선택하고 해당 동작을 선택하려고합니다. 이를 위해 TableCellRenderer의 사용자 정의 구현을 작성했으며 원하는대로 작동합니다. 여기사용자 정의 TableCellRenderer가있는 Swing JTable
public class AccountMovementTableCellRenderer extends JLabel implements TableCellRenderer{
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column){
//My implementation here...
return this;
}
}
그리고 JTable
의 창조 :
AccountMovementTableCellRenderer accountMovementCellRenderer = new AccountMovementTableCellRenderer();
entryTable = new JTable(entryModel){
private static final long serialVersionUID = 1L;
@Override
public TableCellRenderer getCellRenderer(int row, int column){
return accountMovementCellRenderer;
}
};
난 단지 만들 그러나 여기
이 (가)TableCellRenderer
의 구현입니다 ... 난 아직도 대해 혼란 스러워요 뭔가가있다 내 CellRenderer의 한 인스턴스이지만 셀당 하나의 CellRenderer을 기대하고 있었고이 방법으로 작동하는 것에 놀라움을 금치 못했습니다 ... 내용과 색상은 모든 셀마다 다르지만 항상 CellRenderer의 동일한 인스턴스를 사용하므로 어떻게 작동 할 수 있습니까? ?