帆软自带的tab块标题只有左上、左、右下,右几个位置,对于我们复杂的业务场景非常不友好。
FineReport10的时候,我们会在第一个tab标题中输入空格,让后面几个tab标题向后移到合适的位置,在初始化的时候默认显示第二个tab就可以了。
但是升级到FineReport11之后,tab标题中输入空格,预览时不识别。寻找了好多方法,想用JS来实现,都未实现(JS能力确实薄弱,如果哪位大佬对JS比较精通的,热烈欢迎分享JS解决)
现在分享我实现的方法:将tab标题隐藏,用报表块单元格来切换tab,给单元格设置颜色,传参数实现点击单元格,变颜色的效果。
1.tab组件大小调整为0.

2.在tab块上方加一个报表块,单元格中输入您的tab标题,并设定上默认的颜色。

3.我们现实点击单元格,切换tab块的功能。就是在“超级链接”添加“JavaScript脚本”

JS脚本:_g().getWidgetByName("tabpane1").showCardByIndex(1);
tabpane1:替换成你的tab名称
1:tab块索引,默认从0开始。
4.现在来实现,如果点击某个tab块,选中状态下的tab标题颜色不同,区分其他tab块。
4-1.创建模版参数:tab,默认值是第一个tab标题

4-2.在每一个tab标题单元格上添加超级链接“当前决策报表对像2”



4-3.设置单元格条件属性,当模版参数=当前单元格值时,设置背景颜色。

每个单元格都设定上条件属性,我们来看效果吧。


如果大家有其他的方法,欢迎评论分享。 |