javafx+MySQL :登录页面

登录页面功能实现

public class Down1 extends Application {
private String  user;
    public static void main(String[] args) {
        launch(args);
    }
    @Override
    public void start(Stage primaryStage) throws Exception {
        GridPane gr=new GridPane();
        gr.setId("gr");
//        gr.setStyle("-fx-background-color:#FFF5EE");

        gr.setAlignment(Pos.CENTER);//设置内容居中

        final ToggleGroup group = new ToggleGroup();

        RadioButton rb1 = new RadioButton("管理员");
        rb1.setToggleGroup(group);

        RadioButton rb2 = new RadioButton("用户");
        rb2.setToggleGroup(group);




        RadioButton rb3 = new RadioButton("Contacts");
        rb3.setToggleGroup(group);
        Label L_name =new Label("账户:");
        Label L_password =new Label("密码:");

        TextField t_name=new TextField();
        t_name.setStyle(
"-fx-font-size: 20"
        );

        t_name.setUserData("李宁波");
t_name.setTooltip(new Tooltip("请输入中文账户名"));
        Button login=new Button("登录");
        login.setId("deng");
        Button clear=new Button("清除");
clear.setId("clear");
Button addperson =new Button("注册");
        PasswordField t_password=new PasswordField();
        t_password.setUserData("123456");
        t_password.setTooltip(new Tooltip("请输入数字或字母"));//给密码输入框添加提示信息
        gr.add(L_name,0,0);//第一列第一行
        gr.add(t_name,1,0);//第二列第一行
        gr.add(L_password,0,1);//第一列第二行
        gr.add(t_password,1,1);//第二列第二行
        gr.add(clear,0,4);
        gr.add(login,1,4);
        gr.add(addperson,1,4);
gr.add(rb1,1,5);
gr.add(rb2,1,6);
rb1.setUserData("1");
rb2.setUserData("2");
        gr.setHgap(5);
        gr.setVgap(10);

        gr.setMargin(login,new Insets(0,0,0,200));//设置登录按钮的左边距为200
        group.selectedToggleProperty().addListener(
                (ObservableValue<? extends Toggle> ov, Toggle old_Toggle,
                 Toggle new_Toggle) -> {
                   user= (String) group.getSelectedToggle().getUserData();
                });
        //给lable及登录等按钮设置id便于装添css文件
       t_password.setId("t_password");
       L_name.setId("L_name");
       L_password.setId("L_password");
       t_name.setId("t_name");
       addperson.setId("addperson");
        Scene scene=new Scene(gr);//将表格布局加到场景里

        URL url =this.getClass().getClassLoader().getResource("CSS_book/css1.css");
        scene.getStylesheets().add(url.toExternalForm());//将css文件加到场景中
        primaryStage.setScene(scene);

        primaryStage.setTitle("登陆界面");
//        设置窗口大小为宽800高600
       primaryStage.setWidth(800);
        primaryStage.setHeight(600);
        primaryStage.setResizable(false);
        primaryStage.show();
        addperson.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent event) {
                try {
                    zhuche zc=new zhuche();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        });
        clear.setOnAction(new EventHandler<ActionEvent>() {
            @Override
//            使账号和密码的文本框的内容清除
            public void handle(ActionEvent event) {

                t_name.setText("");
                t_password.setText("");
            }
        });
        group.selectedToggleProperty().addListener(
                (ObservableValue<? extends Toggle> ov, Toggle old_Toggle,
                 Toggle new_Toggle) -> {
                    if (group.getSelectedToggle() != null) {
                        System.out.println(group.getSelectedToggle());
                    }
                });
//        判断是否登陆成功,成功打开一个新界面
        login.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent event) {
                GetMysql.GetList();
                String name=t_name.getText();
                String password=t_password.getText();
                System.out.println(name);
                if (name==""||password=="")
                {
                    System.out.println("请填写完整信息");
                }
                else {

                    for (int i=0;i<GetMysql.personList.size();i++) {
                        if (name.equals(GetMysql.personList.get(i).getName()) && password.equals(GetMysql.personList.get(i).getPassword())) {
                            System.out.println("登陆成功");
//
                            mainapp a1 = new mainapp();
                            Stu_user stu_user=new Stu_user();
                            if (user=="2"){
                            try {
                                stu_user.user_name=name;
                               stu_user.start();
                            } catch (Exception e) {
                                e.printStackTrace();
                            }
                                primaryStage.close();
                                break;
                            }
                            else if (user=="1") {
                                try {
                                    a1.start();
                                } catch (Exception e) {
                                    e.printStackTrace();
                                }
                                primaryStage.close();
                                break;
                            }
                        }
                        if (i==GetMysql.personList.size()-1)
                        {
                            System.out.println("用户名或密码错误");
                            FadeTransition fadeTransition = new FadeTransition();
                            fadeTransition.setFromValue(0);
                            fadeTransition.setToValue(1);
                            fadeTransition.setNode(gr);
                            fadeTransition.setDuration(Duration.seconds(0.2));
                            fadeTransition.play();
                            NewWindow1 newWindow1 = new NewWindow1();
                        }


                    }
                     }

            }
        });
    }

}

实现思路实现思路

 核心思路就是

在TextField输入框中输入 账户名 PasswordField中输入密码

然后点击登录按钮

用到按钮点击方法

login.setOnAction(new EventHandler<ActionEvent>() {
    @Override
    public void handle(ActionEvent event) {

/* 里面填写点击按钮后的操作

登录界面要写 判断输入在TextField 与 PasswordFiel里的账户和密码是否和数据库里的密码是否一样

*/

String name=t_name.getText();
String password=t_password.getText();

}

});

String name=t_name.getText();
String password=t_password.getText();

getText()方法:得到TextField和passwordField的输入内容

然后将得到的内容与储存的账号及密码做匹配就

用equil比较

如果相等即匹配成功

增加功能

更新用了MVC架构的登录界面

 添加了JDBC连数据库功能

 

百度网盘代码分享icon-default.png?t=N3I4https://pan.baidu.com/s/1EHexpqiSF1_6_i3MdGm_sQ?pwd=c846 想试我的代码必须先根据上方的图片建一个一模一样的数据库哦(book-person-name&&password)

  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值