决策报表中多个跑马灯,怎么实现同步暂停,V10

我记得最开始的跑马灯就是同步暂停的

看板测试.rar

FineReport 霜凡 发布于 前天 11:55 (编辑于 前天 14:53
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
华莉星宸Lv7资深互助
发布于前天 11:59

参考

在FR10决策报表中实现多个跑马灯同步暂停,可通过JavaScript调用报表块的stopMarquee()接口来实现。以下是具体操作步骤:

1. 添加按钮控件

在决策报表中拖入按钮控件,作为触发同步暂停的按钮。例如新增名为"btn_stop"的按钮:按钮控件示意图

2. 绑定JS事件

给按钮添加点击事件,编写JS代码同步停止所有跑马灯:


// 同步停止所有报表块的跑马灯

var reportNames = ['report0', 'report1', 'report2']; // 要控制的报表块名称列表

reportNames.forEach(function(name) {

var report = _g().getWidgetByName(name);

if (report) report.stopMarquee();

});

注:通过数组定义所有需要控制的报表块名称1

3. 扩展应用

可通过以下方式增强控制能力:

  1. 动态暂停/恢复:通过flag变量控制


var isPaused = false;

var toggleMarquee = function() {

isPaused = !isPaused;

reportNames.forEach(function(name) {

var report = _g().getWidgetByName(name);

isPaused ? report.stopMarquee() : report.startMarquee();

});

}

动态效果示意图

  1. 组件联动控制:通过参数传递控制状态

注意事项:

  1. 确保所有报表块已通过.startMarquee()启用跑马灯

  2. 若存在不同方向(横向/纵向)的跑马灯,该方法同样适用

  3. 需要技术支持确认部署环境兼容性时,请参考:跑马灯接口文档

需要示例模板可下载:报表块跑马灯扩展应用.frm

  • 霜凡 霜凡(提问者) 不要按钮,就鼠标悬浮的暂停
    2025-07-04 13:17 
  • 华莉星宸 华莉星宸 回复 霜凡(提问者) 跑马灯好像不行
    你可以试试这https://bbs.fanruan.com/wenda/question/177984.html
    2025-07-04 14:01 
最佳回答
0
CD20160914Lv8专家互助
发布于前天 14:01(编辑于 前天 15:02

你自己使用代码,效果如下

因为我没有FR10的版本,这个是之前保留的

你改代码 为你的报表块名称就行了

代码.rar

解压后,使用文本编辑器打开文件就行了,然后放在你的决策报中去

image.png

效果

111.gif

image.png

  • 霜凡 霜凡(提问者) 不行啊,都不动的
    2025-07-04 14:08 
  • CD20160914 CD20160914 回复 霜凡(提问者) 你是如何写的,我的动画不是动了吗???两个都也能够暂停,不动是你的问题呀,怎么会是我的问题呢
    2025-07-04 14:10 
  • 霜凡 霜凡(提问者) 回复 CD20160914 一样,就只是改了名字,有没有可能是版本用不了
    2025-07-04 14:14 
  • CD20160914 CD20160914 回复 霜凡(提问者) 我的代码就是FR10的
    2025-07-04 14:16 
  • 霜凡 霜凡(提问者) 回复 CD20160914 我把组件名称改成你的,代码不动,也用不了。。
    2025-07-04 14:37 
  • 3关注人数
  • 68浏览人数
  • 最后回答于:前天 15:02
    请选择关闭问题的原因
    确定 取消
    返回顶部