不知道为什么图片大小总是超出限制,所以我就用分割线分了一下直接复制代码了,见谅
我用Scene Builder做了一个按钮 然后设置onAction来调用Main中的方法想要切换场景 但是显示报错
-------------------------------------------------------------------------------
.fxml文件里按钮的代码:
<Button layoutX="111.0" layoutY="273.0" mnemonicParsing="false" onAction="#subScence" text="Button" />
-------------------------------------------------------------------------------
Main.class里切换Scence的代码:
public void subScence() {
System.out.println("KKKKK");
this.primaryStage.setScene(this.sub);
}
-------------------------------------------------------------------------------
运行之后的报错:
KKKKK
Exception in thread "JavaFX Application Thread" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at javafx.fxml.FXMLLoader$MethodHandler.invoke(FXMLLoader.java:1774)
at javafx.fxml.FXMLLoader$ControllerMethodEventHandler.handle(FXMLLoader.java:1657)
at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
-------------------------------------------------------------------------------
然后我试了一下用代码在Main中设置了一个按钮,然后调用同一个方法,是可以正常切换场景的
-------------------------------------------------------------------------------
Main.class里新建的Button的代码:
button2.setOnAction(e->{
subScence();
});
-------------------------------------------------------------------------------
这个应该怎么解决呢,如何才能用Scene Builder里设置的按钮实现在同一个Stage里切换Scene
我用Scene Builder做了一个按钮 然后设置onAction来调用Main中的方法想要切换场景 但是显示报错
-------------------------------------------------------------------------------
.fxml文件里按钮的代码:
<Button layoutX="111.0" layoutY="273.0" mnemonicParsing="false" onAction="#subScence" text="Button" />
-------------------------------------------------------------------------------
Main.class里切换Scence的代码:
public void subScence() {
System.out.println("KKKKK");
this.primaryStage.setScene(this.sub);
}
-------------------------------------------------------------------------------
运行之后的报错:
KKKKK
Exception in thread "JavaFX Application Thread" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at javafx.fxml.FXMLLoader$MethodHandler.invoke(FXMLLoader.java:1774)
at javafx.fxml.FXMLLoader$ControllerMethodEventHandler.handle(FXMLLoader.java:1657)
at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
-------------------------------------------------------------------------------
然后我试了一下用代码在Main中设置了一个按钮,然后调用同一个方法,是可以正常切换场景的
-------------------------------------------------------------------------------
Main.class里新建的Button的代码:
button2.setOnAction(e->{
subScence();
});
-------------------------------------------------------------------------------
这个应该怎么解决呢,如何才能用Scene Builder里设置的按钮实现在同一个Stage里切换Scene

