• ExtJS4.1.1 设置表格背景颜色 修改文本颜色 在表格中插入图片


    由于ExtJS版本不断更新,各种渲染方式也随之有所改变,目前大部分书籍还是停留在3版本,对于ExtJS4.1.1版本的表格渲染,设置表格背景颜色的方式如下:

    首先,定义行的样式:

    1         .yellow-row .x-grid-cell{
    2             background-color:#FFFF00 !important;
    3         }
    4         .white-row .x-grid-cell{
    5             background-color:#FFFFFF !important;
    6         }
    7         .blue-row .x-grid-cell{
    8             background-color:#00AAFF !important;
    9         }

    该样式定义应在引入js文件之前。
    然后,在js文件中引用样式。下面文件中第12~28行是对样式的引用:

     1     var gridPanel = new Ext.grid.Panel({
     2         title : '联系人',
     3         store : Ext.data.StoreManager.lookup('simpsonsStore'),
    12         viewConfig : {
    13             getRowClass: function(record, rowIndex, rowParams, store){
    14                 var cls;
    15                 switch(rowIndex % 2){
    16                     case 1:
    17                         cls = 'white-row';    
    18                         break;
    19                     case 0:
    20                         cls =  'yellow-row';
    21                         break;
    22                 }
    23                 if(record.get('name') == '张毛毛'){
    24                     cls =  'blue-row';
    25                 }
    26                 return cls;
    27             }
    28         },
    29         columns : [{
    30                     text : '姓名',
    31                     dataIndex : 'name',
    32                     sortable : true,  //不可排序
    33                     hideable: false   //不可隐藏
    34                     //flex: 1   //尽量拉伸
    35                 }, {
    36                     text : '电话',
    37                     dataIndex : 'phonenumber'
    38                     //renderer : renderCol
    39                     //flex : 1
    40                     //hidden: true
    41                 },{
    42                     text: '性别',
    43                     dataIndex: 'sex',
    44                     renderer: function(value){
    45                         if(value == '男'){
    46                             return "<span style='color:blue;'>男</span><img src='../imgs/man.png' width='15'/>";
    47                         }else{
    48                             return "<span style='color:red;'>女</span><img src='../imgs/woman.png' width='15'/>";
    49                         }
    50                     }
    51                 },{
    52                     text: '出生日期',
    53                     dataIndex: 'birthday',
    54                     type: 'date',
    55                     renderer: Ext.util.Format.dateRenderer('Y年m月d日')
    56                 }],
    57         height : 200,
    58         width : 400,
    59         renderTo : document.getElementById('grid'),
    60         listeners: {
    61             click: {
    62                 element: 'el', //bind to the underlying el property on the panel
    63                 fn: function(){
    64                     var selections = gridPanel.getSelectionModel().getSelection();
    65                     Ext.MessageBox.alert('aaaa',selections[0].get('name'));
    66                 }
    67             }
    68         }
    69     });

    上面文件中,第44~50行是给表格添加图片以及修改文本颜色。

    上面对背景颜色的设置只是针对行的设置,下面是对列进行背景渲染的函数,在上面js代码中的38行中调用。

    1     function renderCol(value, metaData, record, rowIndex, columnIndex, store, view ){
    2         metaData.style = "background-color: #F5C0C0";
    3         return value;
    4     }
  • 相关阅读:
    uitoolbar 圆角
    json
    MFC 控件使用笔记
    automake和autoconf使用介绍
    [译]C# Socket连接请求超时机制
    linux 环境变量的配置
    OK6410,修改调试串口,屏蔽调试输出,增加启动画面
    UML图各类符号含义
    图解UML类与类之间的六中关系
    C#综合揭秘——深入分析委托与事件
  • 原文地址:https://www.cnblogs.com/lihuiyy/p/2704329.html
Copyright © 2020-2023  润新知