如何在 Java 中设置 JTable 的交替行颜色?
javaobject oriented programmingprogramming更新于 2025/6/30 8:44:17
JTable 是 JComponent 类的子类,可用于创建在多个 行 和 列 中显示信息的表。从 JTable 中选择一个值时,将生成 TableModelEvent,该事件通过实现 TableModelListener 接口进行处理。
我们可以通过重写 JTable 类的 prepareRenderer() 方法将 JTable 的交替行颜色设置为 。
语法
public Component prepareRenderer(TableCellRenderer renderer, int row, int column)
示例
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
public class AlternateRowColorTableTest extends JFrame {
public AlternateRowColorTableTest() {
setTitle("AlternateRowColorTable Test");
JTable table = new JTable(new Object[][] {{"115", "Ramesh"}, {"120", "Adithya"}, {"125", "Jai"}, {"130", "Chaitanya"}, {"135", "Raja"}}, new String[] {"Employee Id", "Employee Name"}) {
public Component prepareRenderer(TableCellRenderer renderer, int row, int column) {
Component comp = super.prepareRenderer(renderer, row, column);
Color alternateColor = new Color(200, 201, 210);
Color whiteColor = Color.WHITE;
if(!comp.getBackground().equals(getSelectionBackground())) {
Color c = (row % 2 == 0 ? alternateColor : whiteColor);
comp.setBackground(bg);
c = null;
}
return returnComp;
}
};
add(new JScrollPane(table));
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new AlternateRowColorTableTest();
}
}
输出
相关文章
有用资源
java 参考教程 - 该教程包含有关 java 的更多信息:https://www.cainiaomax.com/java/

