程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle修改JTable中的某個單元格的顏色的方案

Oracle修改JTable中的某個單元格的顏色的方案

編輯:Oracle數據庫基礎

以下的文章主要是對Oracle修改JTable中的某個單元格的顏色的介紹,不過原編者的代碼沒有實現其實際的需求,在47、48行上加else cell.setBackground(Color.WHITE);即可,以下就是相關內容的介紹。

Oracle修改JTable後的完整代碼如下:

  1. import Java.awt.*;  
  2. import Java.awt.event.*;  
  3. import Javax.swing.*;  
  4. import Javax.swing.table.*;  
  5. public class TestTableCellColor extends JFrame  
  6. {  
  7. private String[] colname = {"第1列","第2列","第3列","第4列","第5列"};   

表頭信息

  1. private String[][] data = new String[10][5];  

表內容

界面組件----------------------

  1. private JScrollPane scroPanel = new JScrollPane(); 

中底層滾動面板

  1. private DefaultTableModel model;  

Oracle修改JTable中某一單元格的顏色中列表默認TableModel

  1. private JTable table; 

int r=1, c=2;用於控制變色區域

  1. public TestTableCellColor()  
  2. {  
  3. makeFace();  
  4. addListener();  
  5. showFace();  
  6. }  
  7. private void makeFace()  
  8. {  

表內容數組 data[][] 賦值------------

  1. for(int i = 0; i < 10; i++)  
  2. {  
  3. for(int j = 0; j < 5; j++)  
  4. {  
  5. data[j] = "( " + (j+1) + ", " + (i+1) + " )";  
  6. }  
  7. }  
  8. table = new JTable(model = new DefaultTableModel(data,colname));  
  9. table.setEnabled(false);  

新建列表現器------------------------

  1. DefaultTableCellRenderer tcr = new DefaultTableCellRenderer() {  
  2. public Component getTableCellRendererComponent(JTable table, Object value,  
  3. boolean isSelected, boolean hasFocus, int row, int column)  
  4. {  
  5. Component cell = super.getTableCellRendererComponent  
  6. (table, value, isSelected, hasFocus, row, column);  
  7. if(row==r && column==c && cell.isBackgroundSet())  

設置變色的單元格

  1. cell.setBackground(Color.GRAY);  
  2. else  
  3. cell.setBackground(Color.WHITE);  
  4. return cell;  
  5. }  
  6. };   
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved