JavaFx實(shí)現(xiàn)登錄成功跳轉(zhuǎn)到程序主頁(yè)面
本文實(shí)例為大家分享了JavaFx實(shí)現(xiàn)登錄成功跳轉(zhuǎn)到程序主頁(yè)面的具體代碼,供大家參考,具體內(nèi)容如下
1、需求
登錄頁(yè)面在輸入賬號(hào)密碼之后,驗(yàn)證賬號(hào)密碼時(shí)候正確,正確就跳轉(zhuǎn)到應(yīng)用程序的首頁(yè)。
文筆不行,可能沒怎么寫清楚,歡迎在下面討論
效果如下圖:

2、實(shí)現(xiàn)
1)、LoginApplication為啟動(dòng)類,啟動(dòng)之后進(jìn)入到登錄頁(yè)面
public class LoginApplication extends Application {
? ? @Override
? ? public void start(Stage stage) throws IOException {
? ? ? ? AnchorPane Login = FXMLLoader.load(getClass().getClassLoader().getResource("FXML/Login/Login.fxml"));
? ? ? ? Scene login = new Scene(Login);
? ? ? ? stage.setTitle("登錄");//設(shè)置標(biāo)題
? ? ? ? stage.setScene(login);
? ? ? ? stage.show();
?
? ? }
?
? ? public static void main(String[] args) {
? ? ? ? launch(args);
? ? }
}2)、LoginController 類進(jìn)行判斷密碼的正確性,當(dāng)密碼正確的時(shí)候關(guān)閉登錄窗口,打開主頁(yè)面窗口
public class LoginController {
? ? @FXML
? ? private TextField NumberTextField;
? ? @FXML
? ? private TextField PasswordTextField;
? ? @FXML
? ? private Label MessageLabel;
? ? @FXML
? ? private Button LoginButton;
? ? public void loginButtonClick(ActionEvent event) throws IOException {
? ? ? ? String number = NumberTextField.getText();
? ? ? ? String password = PasswordTextField.getText();
? ? ? ? if (number != null && !number.equals("") && password != null && !password.equals("")) {
? ? ? ? ? ? boolean login = LoginJudge.Login(number, password);
? ? ? ? ? ? if (login == true){
? ? ? ? ? ? ? ? MessageLabel.setText("登錄成功");
? ? ? ? ? ? ? ? Stage primaryStage=(Stage)LoginButton.getScene().getWindow();//將submit(登錄按鈕)與MainApplication類中的primaryStage(新窗口)綁定 并執(zhí)行close()
? ? ? ? ? ? ? ? primaryStage.close();//打開新的窗口 所以要關(guān)閉當(dāng)前的窗口
? ? ? ? ? ? ? ? MainApplication mainApplication = new MainApplication();//新窗口類
? ? ? ? ? ? ? ? mainApplication.MainApp();//打開新窗口
? ? ? ? ? ? }else {
? ? ? ? ? ? ? ? MessageLabel.setText("賬號(hào)或密碼錯(cuò)誤");
? ? ? ? ? ? }
? ? ? ? }else {
? ? ? ? ? ? MessageLabel.setText("請(qǐng)輸入賬號(hào)或密碼");
? ? ? ? }
? ? }
}3)、MainApplication為主頁(yè)面的類,LoginController調(diào)用這個(gè)類來啟動(dòng)主頁(yè)面
public class MainApplication {
? ? public void MainApp() throws IOException {
? ? ? ? AnchorPane root = FXMLLoader.load(getClass().getClassLoader().getResource("FXML/Main.fxml"));
? ? ? ? Scene scene = new Scene(root);
? ? ? ? scene.getStylesheets().add(getClass().getResource("/CSS/MainCss.css").toExternalForm());
? ? ? ? Stage stage = new Stage();
? ? ? ? stage.setTitle("技術(shù)支持工作臺(tái)");//設(shè)置標(biāo)題
? ? ? ? stage.setScene(scene);
? ? ? ? stage.show();
? ? }
}以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
springboot 通過代碼自動(dòng)生成pid的方法
這篇文章主要介紹了springboot 通過代碼自動(dòng)生成pid的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-07-07
Java利用自定義注解實(shí)現(xiàn)數(shù)據(jù)校驗(yàn)
JSR303是一套JavaBean參數(shù)校驗(yàn)的標(biāo)準(zhǔn),它提供了一系列的校驗(yàn)方式,這些校驗(yàn)方式在javax.validation.constraints包中。本文就來聊聊如何利用它實(shí)現(xiàn)數(shù)據(jù)校驗(yàn)2022-09-09
Java 基礎(chǔ):string中的compareTo方法
這篇文章主要介紹了Java 基礎(chǔ):string中的compareTo方法,文章圍繞string中的compareTo方法的相關(guān)資料展開文章詳細(xì)內(nèi)容,希望對(duì)待大家有所幫助2021-12-12
Java中的CompletionService批量異步執(zhí)行詳解
這篇文章主要介紹了Java中的CompletionService批量異步執(zhí)行詳解,我們知道線程池可以執(zhí)行異步任務(wù),同時(shí)可以通過返回值Future獲取返回值,所以異步任務(wù)大多數(shù)采用ThreadPoolExecutor+Future,需要的朋友可以參考下2023-12-12
Java 調(diào)用天氣Webservice詳解及實(shí)例代碼
這篇文章主要介紹了Java 調(diào)用天氣Webservice詳解及實(shí)例代碼的相關(guān)資料,這里附實(shí)例代碼,使用java 調(diào)用webservice 的小應(yīng)用,需要的朋友可以參考下2016-11-11

