javafx 实现先判断是否有license文件,有则打开主界面,否则打开注册界面
时间: 2024-03-05 18:53:48 浏览: 16
可以使用以下代码来实现:
```java
public class Main extends Application {
private static final String LICENSE_FILE = "license.txt";
@Override
public void start(Stage primaryStage) {
boolean hasLicense = false;
// 判断是否存在 license 文件
File licenseFile = new File(LICENSE_FILE);
if (licenseFile.exists()) {
hasLicense = true;
}
try {
if (hasLicense) {
// 打开主界面
FXMLLoader loader = new FXMLLoader(getClass().getResource("Main.fxml"));
Parent root = loader.load();
Scene scene = new Scene(root);
primaryStage.setScene(scene);
primaryStage.show();
} else {
// 打开注册界面
FXMLLoader loader = new FXMLLoader(getClass().getResource("Register.fxml"));
Parent root = loader.load();
Scene scene = new Scene(root);
primaryStage.setScene(scene);
primaryStage.show();
}
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
launch(args);
}
}
```
在上面的代码中,我们首先判断是否存在 `license.txt` 文件,如果存在则将 `hasLicense` 设置为 `true`,否则为 `false`。然后根据 `hasLicense` 的值来打开不同的界面。我们使用 `FXMLLoader` 来加载相应的 FXML 文件,并将其设置为场景的根节点,最后将场景设置到主舞台上并显示出来。