JavaFx实现登录成功跳转到程序主页面
本文实例为大家分享了JavaFx实现登录成功跳转到程序主页面的具体代码,供大家参考,具体内容如下
1、需求
登录页面在输入账号密码之后,验证账号密码时候正确,正确就跳转到应用程序的首页。
文笔不行,可能没怎么写清楚,欢迎在下面讨论
效果如下图:
2、实现
1)、LoginApplication为启动类,启动之后进入到登录页面
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("登录");//设置标题
stage.setScene(login);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
2)、LoginController 类进行判断密码的正确性,当密码正确的时候关闭登录窗口,打开主页面窗口
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(新窗口)绑定 并执行close()
primaryStage.close();//打开新的窗口 所以要关闭当前的窗口
MainApplication mainApplication = new MainApplication();//新窗口类
mainApplication.MainApp();//打开新窗口
}else {
MessageLabel.setText("账号或密码错误");
}
}else {
MessageLabel.setText("请输入账号或密码");
}
}
}
3)、MainApplication为主页面的类,LoginController调用这个类来启动主页面
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("技术支持工作台");//设置标题
stage.setScene(scene);
stage.show();
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
相关文章