0

我有一个带有标签的场景,它显示了目前正在检查硬件的哪一部分,所以我需要在场景绘制后自动调用“checkMethod”,我该如何在 JavaFX 中做到这一点?

4

1 回答 1

2

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

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

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

您还有其他方法:setOnCloseRequest、setOnHidden、setOnHiding、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();
                        }
                    });
                }

            }
        });
于 2013-10-08T11:07:32.923 回答