我想通过点击按钮弹出一个新窗口。 因为我正在使用场景构建器,所以我的项目有main.java和controller.java。 我有两个名为Interface.fxml(主要出现)和Popup.fxml的fxml文件。
我搜索了很多,但所有问题和答案都是关于在main.java中进行的,而不是在controller.java中。我读过关于在其他课程中引用舞台和场景的内容,但是我没有实现。
这是我写的。
import ...
public class Main extends Application {
@Override
public void start(Stage primaryStage) {
try {
Parent root = FXMLLoader.load(getClass().getResource("Interface.fxml"));
Scene scene = new Scene(root);
primaryStage.setTitle("Calculator");
primaryStage.setScene(scene);
primaryStage.show();
} catch(Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
launch(args);
}
}
上面的代码是main.java和
@FXML
private void onButtonClicked(ActionEvent ae) {
try {
FXMLLoader loader=new FXMLLoader(getClass().getResource("Popup.fxml"));
loader.setRoot(this);
loader.setController(this);
loader.load();
} catch(Exception e) {
e.printStackTrace();
}
}
上面的代码在controller.java中。
我想知道如何在controller.java中创建一个新窗口。请帮帮我! (如果需要其他部分,请告诉我。)