【问题标题】:JavaFX Chart animation finishedJavaFX图表动画完成
【发布时间】:2016-02-19 22:27:39
【问题描述】:

我需要获取图表背景的边界,但在图表布置好之前我不能这样做。

如果我设置图表数据,然后尝试获取这些边界,它将返回值0

作为一种解决方法,我在线程的帮助下延迟了这些计算。现在可以了,但由于我在线程中手动延迟,UI 有点闪烁。

JavaFX 节点是否有onAnimationFinished API 或类似的东西?

【问题讨论】:

  • 没有这样的 API。如果您需要这样做,我建议您关闭动画。

标签: java javafx javafx-2 javafx-8


【解决方案1】:

我对此类问题的解决方案是在新窗口中创建图表元素,然后在显示窗口之前进行所有实际计算并布置元素,然后附加一个“WINDOW_SHOWN”侦听器到它,然后运行我需要的任何分析。例如:

 wellDiagram.setLabel(current_position_label);
        wellDiagram.setScaleLabels(zero_scale_labels_bottom, full_scale_labels_bottom);
        wellDiagram.setProperties();
        GraphWindow.get_stage().addEventHandler(WindowEvent.WINDOW_SHOWN, new EventHandler<WindowEvent>() {
            @Override
            public void handle(WindowEvent event) {
                    //DO some stuff to get the bounds of your chart, etc. etc. 
                    //I use it to automatically save an image of the graph with one
                    //One kind of css, and then switch it back to a nice looking one. 
                }
            }
        });
        wellDiagram.setError(lbl_error_label, GraphWindow.graphWindowReturner().getErrorMessage());

如果你不能用新窗口来做......我不完全确定。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-28
    • 2016-03-09
    • 1970-01-01
    • 1970-01-01
    • 2012-12-29
    • 2010-12-18
    • 1970-01-01
    相关资源
    最近更新 更多