Extjs grid设置单元格字体颜色,及单元格背景色 子曰

摘要:
上面的一个是最简单的。在固定单元格中设置字体颜色=“”){return‘'+扩展名格式。usMoney+'';}}第二种效果设置的背景颜色不是固定的,程序需要根据数据进行判断。当添加mouseover和mouseout事件时,背景颜色将根据鼠标移动到不同的行而改变//数据加载时,更改单元格背景颜色网格。getStore()。根据条件//添加鼠标悬停事件网格。on('mouseover',函数(e){variandex=grid.getView().findRowIndex(e.getTarget()));//可以根据鼠标的目标if(index!

Extjs grid设置单元格字体颜色,及单元格背景色 子曰第1张

上面这种是最简单的,设定固定的某单元格中字体颜色。

  //--------------------------------------------------列头
    var cm = new Ext.grid.ColumnModel([
		sm,
           new Ext.grid.RowNumberer(), //自动添加行号
    //         {
    //		    header: "序号",
    //		    dataIndex: "id",
    //		    tooltip: "ID",
    //		    //列不可操作
    //		    //menuDisabled:true,
    //		    //可以进行排序
    //		    sortable: true
    //		} , 
        {
        header: "房间编号",
        tooltip: "房间编号",
        dataIndex: "RoomNumber",
        //可以进行排序
        sortable: true
    }, {
        header: "面积(M²)",
        tooltip: "房间面积",
        dataIndex: "area",
        //可以进行排序
        sortable: true
    }, {
        header: "单价(元/M²)",
        tooltip: "单价",
        dataIndex: "singlePrice",
        //可以进行排序
        sortable: true,
        editor: new Ext.grid.GridEditor(new Ext.form.NumberField({
            allowBlank: false
        }))


    }, {
        header: "总价(元)",
        tooltip: "总价",
        dataIndex: "totalPrice",
        //可以进行排序
        sortable: true

    }, {
        header: "面积(M²)",
        dataIndex: "mianjiCC",
        //可以进行排序
        sortable: true

    }, {
        header: "单价(元/M²)",
        dataIndex: "priceCCS",
        //可以进行排序
        sortable: true,
        editor: new Ext.grid.GridEditor(new Ext.form.NumberField({
            allowBlank: false
        }))

    }, {
        header: "总价(元)",
        dataIndex: "totalPriceCCS",
        //可以进行排序
        sortable: true

    }, {
        header: "",
        tooltip: "销售状态",
        dataIndex: "status",
        //可以进行排序
        sortable: true
    }]);
    //-----------------------------------------------------设置颜色

    cm.setRenderer(7, getColor);
    cm.setRenderer(4, getColor);
    function getColor(val) {
        if (val != "") {
            return '<font color=blue></font><span style="color:red;">' + Ext.util.Format.usMoney(val) + '</span>';
        }
    }


Extjs grid设置单元格字体颜色,及单元格背景色 子曰第2张

第二种效果设置背景色的单元背是不固定的,需要程序根据数据来判断。且加入mouseover和mouseout事件,背景色会根据鼠在移动到不同行而相应的改变。

 除上面的代码外,还要加入事件处理。

注意:由于加入mouseover和mouseout事件,所以只能是EditorGridPanel,Gridpanel无法响应鼠标事件!

  //数据加载,根据条件改变单元格背景色
    grid.getStore().on('load', function (s, records) {
        var girdcount = 0;
        s.each(function (r) {
            if (r.get('status') == '未售') {
                grid.getView().getCell(girdcount, 2).style.backgroundColor = '#CCCCCC'; //填充单元格颜色
                // grid.getView().getCell(girdcount,13).disabled=true; 
            } else if (r.get('status') == '已售') {
                grid.getView().getCell(girdcount, 2).style.backgroundColor = '#990033';
            } else if (r.get('status') == '大定') {
                grid.getView().getCell(girdcount, 2).style.backgroundColor = '#FF9900';
            } else if (r.get('status') == '小定') {
                grid.getView().getCell(girdcount, 2).style.backgroundColor = '#009900';
            } else if (r.get('status') == '保留') {
                grid.getView().getCell(girdcount, 2).style.backgroundColor = '#6633FF';
            }
            girdcount = girdcount + 1;
        });
    }); 


 

 //添加mouseover事件
 grid.on('mouseover',function(e){
  var index = grid.getView().findRowIndex(e.getTarget());//根据mouse所在的target可以取到列的位置
  if(index!==false){//当取到了正确的列时,(因为如果传入的target列没有取到的时候会返回false)
 var colour=grid.getView().getCell(index,2).style.backgroundColor;
 grid.getView().getRow(index).style.backgroundColor=colour;    

  }
   });
   
   //添加mouseout事件
 grid.on('mouseout',function(e){
  var index = grid.getView().findRowIndex(e.getTarget());//根据mouse所在的target可以取到列的位置
  if(index!==false){//当取到了正确的列时,(因为如果传入的target列没有取到的时候会返回false)

 var colour='';

 grid.getView().getRow(index).style.backgroundColor=colour;    

  }
   });


 

免责声明:文章转载自《Extjs grid设置单元格字体颜色,及单元格背景色 子曰》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Halcon模板匹配MACD标准背离公式和选股公式下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

vbscript 中对excel常见操作

 vbs 对excel的操作 删除、修改单元格,设置字体、背景色dim oExcel,oWb,oSheet Set oExcel= CreateObject("Excel.Application") Set oWb = oExcel.Workbooks.Open("E:其他新装电话表.xls") Set oSheet = oWb.Sheets("Sheet...

C# DataGridView控件用法大全

动态添加新行 //方法一: int index = this.dataGridView1.Rows.Add(); this.dataGridView1.Rows[index].Cells[0].Value = "第1列单元格"; this.dataGridView1.Rows[index].Cells[1].Value = "第2列单元格"; //方法二:...

报表工具怎么制作带有时间轴的记录表?

想要制作一个时间轴记录事件的报表,通过报表工具要怎么制作呢?该怎么制作时间轴呢?下面我们就以润乾报表为例制作两种类型的时间轴记录表,具体看下如何实现。 简洁版时间轴 1. 增加数据集,将需要记录的时间和事件取到。 时间和事件数据我从 EXCEL 文件中读取,数据如下图所示: 报表设计器下新建一张报表,然后在“报表”菜单——数据集,中增加文件数据集。...

.Net操作Excel —— NPOI

近期的两个项目都有关于NPOI的功能,经过了一点学习,自己也摸索了一会,感觉还有点意思。现在将部分代码分享一下。一部分是C#代码,一部分是VB.Net的,懒得修改了,基本上都是从项目文件中copy出来的。如果错漏,请指教。 概述: 1、整个Excel表格:WorkBook(工作薄),包含的叫页(工作表):Sheet;行:Row;单元格Cell。 2、NPO...

php生成excel的另一种简单方法

之前我用table的方式写过excel,还用php-excel这个类库写过excel。今天,我再向大家推荐一个超级简单的写excel的方法。 代码: $xstr = "问题id 问题内容 问题回答数 问题发布时间 回答id 回答时间 回答距离问题发布 ";$xstr .= "{$askid} {$askTit} {$z_reply} {$z_asktf}...

04-表格 table(会使用)

第01阶段.前端基础.表格 HTML 第二天目标 能够利用表格、列表和表单完成注册页面的综合案例 能出说表格用来做什么的 能说出列表用来做什么的 能说出表单用来做什么的 为了让我们页面显示的更加整齐,我们需要学习三个表(表格、表单、列表) 表格 table(会使用) 目标: 理解: 能说出表格用来做什么的 表格的基本结构组成 应用: 能够熟练...