功能说明
超链接特效功能是基于报表特殊效果功能的一种扩展实现。
报表特殊效果功能的作用是为单元格添加一些特殊的显示效果。
超链接特效可以给超链接添加特殊显示效果,实现超链接功能的扩展增强。
当产品默认生成的超链接显示效果不能满足用户的个性化需求时,可借助超链接特效来实现客户化的定义。
超链接特效并不是设置超链接,而是对已经设置了超链接的单元格的显示效果进行个性化处理。
实现原理
超链接特效功能基于报表单元格的特殊效果功能。其原理是制作报表时,在报表单元格上保存一个自定义属性“effect”,该自定义属性内容为JSON格式,用于描述该单元格的特殊效果;在报表展现时解析单元格的“effect”属性内容,并根据此内容对报表对象进行修改、扩展等处理。
“特殊效果”信息作为单元格自定义属性(属性名为effect)存储到单元格上,格式为:
JSONObject json =
{
effectType:效果类型,
effectDetail:{
// 具体属性用户根据需要的具体效果进行自定义的属性扩展...
}
}
超链接特效的effect属性的json设置规则如下:
effectType: link,
effectDetail:{
css:{//个性化超链接显示效果,使用css语法…
color: red,
…
},
html:{//个性化html事件
onmouseover: 鼠标移入事件,
onmouseout: 鼠标移出事件,
…
},
params:{//个性化链接参数
param1: {type:0 ,value:value1},// type为0,表示普通参数类型,直接取值
…
paramR: {type:1, value:{rx:-10, ry:-10}}// type为1,表示引用单元格值类型}
}
rx,ry参数说明:
rx:正数代表向上,负数代表向下;ry:正数代表向左,负数代表向右
例如:
rx:1代表取相对于此单元格向下移动一个单元格的值,-1代表取相对于此单元格向上移动一个单元格的值;
ry:1代表取相对于此单元格向右移动一个单元格的值,-1代表代表取相对于此单元格向左移动一个单元格的值
使用方法
1.打开复杂报表设计器,选中要设置超链接特效的单元格,在工具栏的“插入”选项卡中找到“特殊效果”按钮,在弹出的对话框中从“按钮”类别下选择“超链接”选项,然后点击下一步,配置超链接特效的json值。
2.配置超链接的个性化效果:
3.点击预览,查看超链接设置效果,超链接字体变为红色,鼠标经过超链接时,页面弹出提示信息
4.点击超链接,将“华南”数值传过去,报表展现华南地区明细表:
用户可根据对超链接个性化的需求,按照上面json规则,实现客户化的超链接特效,比如设置超链接的css样式,html事件,或者是个性化的动态传参。
应用举例:
修改超链接的展现样式,引入自定义的css渲染超链接
超链接中添加个性化html事件,如onmouseover鼠标移入事件,onmouseout鼠标移出事件等
在超链接中添加个性化链接参数,包括固定值参数和取单元格的值作为参数的值