//TableCellColor.java
import javax.swing.*;
import java.awt.*;
import javax.swing.table.*;
public class TableCellColor extends JFrame {
String[] columnNames = {"第1列", "第2列", "第3列"};
Object[][] data = {
{
"(1,1)", "(1,2)", "(1,3)"}
, {
"(2,1)", "(2,2)", "(2,3)"}
, {
"(3,1)", "(3,2)", "(3,3)"}
, {
"(4,1)", "(4,2)", "(4,3)"}
,
};
int r = 1, c = 0; // 用于控制变色区域
public TableCellColor() {
DefaultTableModel dtm = new DefaultTableModel(data, columnNames);
JTable table = new JTable(dtm);
table = new JTable(dtm) {
public Component prepareRenderer(TableCellRenderer renderer, int row,
int column) {
Component component = super.prepareRenderer(renderer, row, column);
if (row == r && column == c) {
component.setBackground(Color.gray);
}
return component;
}
};
JScrollPane scroll = new JScrollPane(table);
this.setContentPane(scroll);
this.setBounds(100, 50, 300, 150);
}
public static void main(String arg[]) {
TableCellColortes = new TableCellColor();
tes.setVisible(true);
tes.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
本文介绍了一个使用Java Swing实现的表格单元格颜色变化的示例程序。该程序通过继承JFrame并重写JTable的prepareRenderer方法来实现特定单元格背景色的变化。
2273

被折叠的 条评论
为什么被折叠?



