java如何更改JTable的空白颜色? 9 月,3 周 Questions & Answers 277 我正在尝试在我的应用程序中创建一个JTable。到目前为止,我已经能够改变几乎所有我需要的设置,除了空白空间的颜色。我想更改颜色,使其与行的背景色相同。你是怎么做到的
# 1 楼答案 import java.awt.Color; import java.awt.Component; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.table.DefaultTableCellRenderer; public class TableExample { JFrame f; TableExample() { f = new JFrame(); String data[][] = { { "101", "Amit", "670000" }, { "102", "Jai", "780000" }, { "101", "Sachin", "700000" } }; String column[] = { "ID", "NAME", "SALARY" }; JTable jt = new JTable(data, column); jt.setDefaultRenderer(Object.class, new DefaultTableCellRenderer() {// alternate background color for rows 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 (!isSelected) c.setBackground(row % 2 == 0 ? Color.white : Color.lightGray); return c; }; }); jt.setBackground(Color.red); jt.setFillsViewportHeight(true); jt.setBounds(30, 40, 200, 300); JScrollPane sp = new JScrollPane(jt); f.add(sp); f.setSize(300, 400); f.setVisible(true); } public static void main(String[] args) { new TableExample(); } }
# 1 楼答案
# 2 楼答案
只需检查jtable属性中的不透明部分