是否可以使用mxIGraphLayout
的进度条?我有一个图表,需要一个非常重要的时间来布局,我希望用户能够看到,是的,正在发生的事情。
理想情况下,我想要一些我可以解释(甚至大致)完成百分比的东西,但似乎没有办法添加在布局期间调用的任何侦听器。
如果重要,我正在使用mxOrganicLayout
,但我将来可能会改变。
答案 0 :(得分:3)
可以通过扩展mxOrganicLayout
并覆盖以下方法来实现这一目标
@Override
public void execute(Object cell)
{
progress.setProgress(0);
try
{
super.execute(cell);
}
finally
{
progress.setProgress(maxIterations);
}
}
@Override
protected void performRound()
{
progress.setNote("Iteration " + iteration);
progress.setProgress(iteration);
super.performRound();
}
final ProgressMonitor progress;
显然,您还需要在某个时刻设置progress
。 execute
通知进度监视器已执行已执行,并在完成后将其关闭。
performRound
来执行实际更新,因此增加进度将导致进度条前进。