至高吴上(Alfa.wu)

一个人,一生,能坚持做好一件事情是多么的牛XX啊!!!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

需要注意的点是:

1 . 要对自由格中对应的 字段框的背景填充方式改为:填充,否则没有效果.

2 . 代码中红色部门代码: Column 为明细网络对象属性中的 列集合 中的 交叉列的 名称,  Report.RunningDetailGrid.Columns.Item("Column_2") 

3.  蓝色部门 为自由格中 控件的索引位置 ,也可以根据字段框的名称来进行控制如:  contentCell.Controls.Item("FieldBox8")

代码如下: 

/**
 *  当多行交叉报表时,对多行交叉报表中自由格中的多个字段控件,进行颜色控制. 取值 判断等实现
 * @author WUYF  11222337@qq.com
 */


var contentCell = Report.RunningDetailGrid.Columns.Item("Column_2").ContentCell;  //ColumnContent.ContentCells.Item("fieldMajiuhaohao_1"); 
//contentCell.BackColor = GetColorValue(0, 255, 0);

var htypeCell = contentCell.Controls.Item(2);
var htypeFieldBox = htypeCell.AsFieldBox;
var htypeDataField = htypeFieldBox.DataField;
var htypeValue = Report.RunningDetailGrid.Recordset.Fields.Item(htypeDataField );

if( htypeValue.AsFloat  == 3)
{

    htypeCell.BackColor = GetColorValue(0,255, 0);
     contentCell.Controls.Item(5).BackColor = GetColorValue(255,0, 0);
}


//根据三原色求出颜色值

function GetColorValue(r,g,b)
{
   return r + g*256 + b*256*256;
}

 

 

源码下载

posted on 2014-06-18 15:13  Alfa  阅读(2058)  评论(0)    收藏  举报