Javafx 2 如何在JavaFX中自动调用方法?

Javafx 2 如何在JavaFX中自动调用方法?,javafx-2,javafx,Javafx 2,Javafx,我有一个带有标签的场景,它显示了当前正在检查的硬件部分,因此我需要在绘制场景后自动调用“checkMethod”,如何在JavaFX中执行该操作?以下是显示场景时的操作方法: stage.setOnShown(new EventHandler<WindowEvent>() { @Override public void handle(WindowEvent arg0) { // TODO Auto-ge

我有一个带有标签的场景,它显示了当前正在检查的硬件部分,因此我需要在绘制场景后自动调用“checkMethod”,如何在JavaFX中执行该操作?

以下是显示场景时的操作方法:

stage.setOnShown(new EventHandler<WindowEvent>() {

            @Override
            public void handle(WindowEvent arg0) {
                // TODO Auto-generated method stub
                checkMethod();
            }
        });
stage.setOnShown(新的EventHandler(){
@凌驾
公共无效句柄(WindowEvent arg0){
//TODO自动生成的方法存根
检查方法();
}
});
您还有其他方法:setOnCloseRequest、setOnHidden、setOnHidden、setOnShowing


评论中提出的方案如下:

scene.windowProperty().addListener(new ChangeListener<Window>() {

            @Override
            public void changed(ObservableValue<? extends Window> arg0,
                    Window oldVal, Window newVal) {
                if(oldVal != null){
                    oldVal.setOnShown(null);
                }
                if(newVal != null){
                    newVal.setOnShown(new EventHandler<WindowEvent>() {

                        @Override
                        public void handle(WindowEvent arg0) {
                            // TODO Auto-generated method stub
                            checkMethod();
                        }
                    });
                }

            }
        });
scene.windowProperty().addListener(新的ChangeListener()){
@凌驾

public void已更改(observeValues正如我正确理解的,绘图的结尾类似于动作类型?基本上,eventhandler将“在显示窗口后立即调用”.在处理程序中,你可以做你认为是幻觉的事情,在这种情况下,调用CheckMethod你说的是舞台或场景?场景是场景图的容器,没有显示/隐藏的逻辑,该逻辑属于窗口或舞台。我想你没有正确理解我的问题。我知道场景没有显示的逻辑隐藏,但我需要它这就是我在那里写的原因。。