2

我有一个border应用到我的应用程序的布局,其中左(西)面板是可折叠的,右(中)面板包含一个rallychart组件。这个想法是,当左侧面板折叠时,用户将获得更大版本的图表,因为会有更多区域来绘制它。我遇到的问题是当左侧面板折叠时,图表不会重绘。这让我感到惊讶,因为如果以任何其他方式调整中心容器的大小(窗口大小更改),图表将重新绘制以自动填充较大的容器。

有没有办法强制rallychart重绘?也许通过触发窗口大小更改事件触发的相同事件?

4

2 回答 2

2

Rally.ui.Chart 包装了一个第三方组件的实例,它为底层的 Highchart 对象提供了一个 Ext 接口。

你可以得到这样的参考:

var chartWrapper = chart.down('highchart');

该组件的代码位于此处:https ://github.com/RallySoftware/Highcharts_ExtJs_4/blob/master/Chart/ux/HighChart.js

在那里,您可以看到它为调用 onResize 方法的窗口调整大小连接了一个处理程序。即使这被标记为私有,我认为这应该有效,并且是您的最佳选择。

chartWrapper.onResize();
于 2014-01-31T15:26:15.327 回答
1

看看这个问题的答案;它可能会让你到达那里:重新加载商店和刷新图表组件的组合。

于 2014-01-30T16:55:56.687 回答