Oracle修改JTable中的某個(gè)單元格的顏色的方案
以下的文章主要是對(duì)Oracle修改JTable中的某個(gè)單元格的顏色的介紹,不過原編者的代碼沒有實(shí)現(xiàn)其實(shí)際的需求,在47、48行上加else cell.setBackground(Color.WHITE);即可,以下就是相關(guān)內(nèi)容的介紹。
Oracle修改JTable后的完整代碼如下:
- import java.awt.*;
- import java.awt.event.*;
- import javax.swing.*;
- import javax.swing.table.*;
- public class TestTableCellColor extends JFrame
- {
- private String[] colname = {"第1列","第2列","第3列","第4列","第5列"};
表頭信息
- private String[][] data = new String[10][5];
表內(nèi)容
界面組件----------------------
- private JScrollPane scroPanel = new JScrollPane();
中底層滾動(dòng)面板
- private DefaultTableModel model;
Oracle修改JTable中某一單元格的顏色中列表默認(rèn)TableModel
- private JTable table;
int r=1, c=2;用于控制變色區(qū)域
- public TestTableCellColor()
- {
- makeFace();
- addListener();
- showFace();
- }
- private void makeFace()
- {
表內(nèi)容數(shù)組 data[][] 賦值------------
- for(int i = 0; i < 10; i++)
- {
- for(int j = 0; j < 5; j++)
- {
- data[j] = "( " + (j+1) + ", " + (i+1) + " )";
- }
- }
- table = new JTable(model = new DefaultTableModel(data,colname));
- table.setEnabled(false);
新建列表現(xiàn)器------------------------
- DefaultTableCellRenderer tcr = new DefaultTableCellRenderer() {
- public Component getTableCellRendererComponent(JTable table, Object value,
- boolean isSelected, boolean hasFocus, int row, int column)
- {
- Component cell = super.getTableCellRendererComponent
- (table, value, isSelected, hasFocus, row, column);
- if(row==r && column==c && cell.isBackgroundSet())
設(shè)置變色的單元格
- cell.setBackground(Color.GRAY);
- else
- cell.setBackground(Color.WHITE);
- return cell;
- }
- };
以上的相關(guān)內(nèi)容就是對(duì)Oracle修改JTable中某一單元格的顏色的介紹,望你能有所收獲。
【編輯推薦】