和風細雨

          世上本無難事,心以為難,斯乃真難。茍不存一難之見于心,則運用之術自出。

          表格渲染器示例



          實現類:
          package com.sitinspring.view.panel;

          import java.awt.Color;
          import java.awt.Component;

          import javax.swing.JTable;
          import javax.swing.table.DefaultTableCellRenderer;

          /**
           * 間隔色表格渲染類
           * 
          @author: sitinspring(junglesong@gmail.com)
           * @date: 2008-1-10
           
          */

          public class ColorTableCellRenderer extends DefaultTableCellRenderer 
              
          private static final long serialVersionUID = -3378036327580475639L;

              
          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 (hasFocus) 
                             
          // 如果獲得焦點則設置背景色為紅色
                             cell.setBackground(Color.red); 
                             
          //cell.setForeground(Color.black); 
                         }
           else 
                             
          if ((row % 2== 0
                                 
          // 偶數行設置為白色
                                 cell.setBackground(Color.white); 
                             }
           else 
                                 
          // 奇數行設置為藍色
                                 cell.setBackground(Color.cyan); 
                             }
           
                         }
           
                         
                         
          return cell; 
                 }
           
          }
           



          package com.sitinspring.view.panel;

          import java.awt.Color;
          import java.awt.Component;
          import java.util.regex.Pattern;

          import javax.swing.JTable;
          import javax.swing.table.DefaultTableCellRenderer;

          /**
           * 大於37顯示紅色的表單元格
           * 
          @author: sitinspring(junglesong@gmail.com)
           * @date: 2008-1-10
           
          */

          public class AgeTableCellRenderer extends DefaultTableCellRenderer 
              
          private static final long serialVersionUID = -334535475639L;

              
          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); 
                         
                         
          // 先把所有單元格設置為白色
                         cell.setBackground(Color.white); 
                         
                         
          // 進行渲染
                         if (table.getColumnName(column).equals("年齡") ) // 如果列名等于“年齡”
                             
          // 取得單元格的文字
                             String strValue=(String)value;
                             
                             
          if(Pattern.matches("\\d+", strValue)){
                                 
          if(Integer.parseInt(strValue)>37){
                                     
          // 如果是數字且值大于37,將單元格背景設置為紅色
                                     cell.setBackground(Color.red); 
                                 }
                                 
                             }

                         }
           
                         
                         
          return cell; 
                 }
           
          }
           

          posted on 2008-02-22 10:06 和風細雨 閱讀(404) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 忻城县| 新安县| 临朐县| 海城市| 延吉市| 湖北省| 长岛县| 兴化市| 大方县| 白玉县| 太仓市| 方城县| 阿拉尔市| 安平县| 蕉岭县| 黄陵县| 南皮县| 托克托县| 新巴尔虎左旗| 麦盖提县| 彩票| 延川县| 安西县| 泽库县| 永胜县| 宜黄县| 古交市| 西充县| 桦川县| 武清区| 彭泽县| 房产| 大埔县| 高邑县| 邵武市| 隆德县| 苍南县| 宁津县| 门头沟区| 营口市| 丰城市|