setShowGrid(false);
을 사용하면 표의 모든 대체 행이 다른 색이되도록 표에 TableCellRenderers
을 사용하여 표 셀을 다시 칠했습니다. 표 셀의 색상이 아닌 표 셀의 배경색을 표시 할 수 있습니다.Java에서 테이블에서 눈금 선을 제거하지만 전체 행을 동일한 색으로 유지
이러한 그리드 선을 색상 표시하는 방법이 있습니까? 아니면 대체 행을 채색하는 더 나은 방법이 필요합니까?
setShowGrid(false);
을 사용하면 표의 모든 대체 행이 다른 색이되도록 표에 TableCellRenderers
을 사용하여 표 셀을 다시 칠했습니다. 표 셀의 색상이 아닌 표 셀의 배경색을 표시 할 수 있습니다.Java에서 테이블에서 눈금 선을 제거하지만 전체 행을 동일한 색으로 유지
이러한 그리드 선을 색상 표시하는 방법이 있습니까? 아니면 대체 행을 채색하는 더 나은 방법이 필요합니까?
선을 제거했지만 간격을 유지했습니다. 간격을 제거하면 효과가 있습니다.
jTable.setIntercellSpacing(new Dimension(0,0));
그냥 JTable의 구성 요소의 배경색을 설정하는 데 필요한 라인 색상하기 위해
,하지만 당신은 억제 할 경우는 셀간 간격 설정 :
색상 : jTable.setBackground ([color]);
import java.awt.BorderLayout; 가져 오기 java.awt.Color; 가져 오기 java.awt.Component; import java.awt.Dimension;
import javax.swing.JFrame; import javax.swing.JTable; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableCellRenderer;
공용 클래스 TestJFrame는 {
public static void main(String[] args) {
JFrame jFrame = new JFrame();
JTable jTable = new JTable();
jTable.setModel(new DefaultTableModel(new String[][] { new String[] {"col1", "col2"}, new String[] {"col1", "col2"}, new String[] {"col1", "col2"}}, new String[] {"colHeader1", "colHeader2"}));
final TableCellRenderer defaultRenderer = jTable.getDefaultRenderer(Object.class);
jTable.setDefaultRenderer(Object.class, new TableCellRenderer() {
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
Component result = defaultRenderer.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
if(!isSelected) {
if (row%2 == 0) {
result.setBackground(Color.GRAY);
} else {
result.setBackground(Color.DARK_GRAY);
}
}
return result;
}
});
jTable.setBackground(Color.RED);
jTable.setShowGrid(false);
//jTable.setIntercellSpacing(new Dimension(0, 0));
jFrame.setLayout(new BorderLayout());
jFrame.add(jTable.getTableHeader(), BorderLayout.NORTH);
jFrame.add(jTable, BorderLayout.CENTER);
jFrame.pack();
jFrame.setVisible(true);
}
나는이 http://stackoverflow.com/questions/8996200/how-to-hide-grid-lines-in-jtable 도움이 될 것이라고 생각 –