JavaFX介绍
JavaFX项目在刚开始创建时有两个类,一个是HelloApplication另一个是HelloController
其中HelloApplication用于写各种方法并绑定不同的FXML文件,HelloController控制类处理用于控制FXML文件中的UI元素和处理逻辑。本文使用图书管理系统部分代码去展示不同。
HelloApplication部分
开头一定要继承Application,并重写里面的Star方法,然后开始创建公共舞台,并设置不同的场景
场景代码如下:(目录末包含全部代码)
package com.example.demo;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
import java.io.IOException;
public class HelloApplication extends Application {
private static Stage primaryStage;
public void start(Stage primaryStage) throws IOException {
this.primaryStage = primaryStage;
starScene();
}
private void starScene() {
try {
FXMLLoader fxmlLoader = new FXMLLoader(HelloApplication.class.getResource("hello-view.fxml"));
Scene scene = new Scene(fxmlLoader.load(), 370, 210);
primaryStage.setResizable(false);
primaryStage.setTitle("欢迎来到网络图书馆");
primaryStage.setScene(scene);
primaryStage.show();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void loginScene(){
try {
FXMLLoader fxmlLoader = new FXMLLoader(Login.class.getResource("login.fxml"));
Scene scene = new Scene(fxmlLoader.load(), 330, 250);
primaryStage.setResizable(false);
primaryStage.setTitle("图书馆管理手册");
primaryStage.setScene(scene);
primaryStage.show();
}catch (IOException e){
e.printStackTrace();
}
}
public static void bookScene(){
try {
FXMLLoader fxmlLoader = new FXMLLoader(HelloApplication.class.getResource("BookList.fxml"));
Scene scene = new Scene(fxmlLoader.load(), 405, 390);
primaryStage.setResizable(false);
primaryStage.setTitle("图书馆");
primaryStage.setScene(scene);
primaryStage.show();
}catch (IOException e){
e.printStackTrace();
}
}
public static void main(String[] args) {
launch(args);
}
}
HelloController
控制类中主要写点击按钮后调用的方法
FXML文件
在FXML文件的按钮上添加
然后就可以实现不同页面的转换了!