使用java-swing做出一个稍微漂亮一点的登陆注册页面

废话不多说,首先展示效果图:

使用java-swing做出一个稍微漂亮一点的登陆注册页面_第1张图片

使用java-swing做出一个稍微漂亮一点的登陆注册页面_第2张图片

github地址:https://github.com/qkmc-rk/bank-system-log-reg.git

swing界面自带的组件并不是很前卫时尚,不过借助于swing比较强大的功能和结构,照样能做出比较好看的界面。


如何做出这样一个实用的登陆平台?

  1. 首先明白项目结构:

           该登陆界面和功能依靠于swing图形库和JDBC数据库访问功能。在逻辑上我们可把此项目分为4个板块,第一个板块为数据操作层,第二个为服务层,第三个为实体层,第四个为ui层。如下:

             使用java-swing做出一个稍微漂亮一点的登陆注册页面_第3张图片

      2.各层代码如下:

                DAO层               Service层           实体层             UI层


        3.现在介绍如何实现UI层:

            第一点,组成,首先登陆界面由若干图片,JLabel,JTextField,JButton等组件组成。

            第二点,如何实现背景图片添加,

                            首先我们需要明白JFrame由三层面板组成,分别rootPanel,LayeredPanel,contentPanel.这里的思路是将背景图片放在JLabel里然后把JLabel附着在我们的LayeredPanel,然后将contentPanel设置为透明,即可完成添加背景图片。

                              代码:

                    background = new ImageIcon("images/background-login.png");//背景
                    backgroundCon = new JLabel(background);//将背景图放在JLbel中
                    backgroundCon.setBounds(0, 0, background.getIconWidth(),background.getIconHeight());
                    getLayeredPane().add(backgroundCon, new Integer(Integer.MIN_VALUE));//放入LayeredPanel
                    JPanel jp = (JPanel)getContentPane();
                    jp.setOpaque(false);  //设置contentPanel透明

            第三点,如何实现JtextField(账号密码输入框)下面的黄色下划线

                                使用ps在背景图上添加即可,然后将JtextField设置为透明,并且将边界设置为null,然后修改field里面的字体和字体颜色,代码如下:                          

                    userIdField.setForeground(Color.white);    //设置字体颜色
                    userPwdField.setForeground(Color.white);
                    userIdField.setBorder(null);        //设置边界为null,没有边框
                    userPwdField.setBorder(null);
                    userIdField.setOpaque(false);            //设置透明
                    userPwdField.setOpaque(false);

            第四点,如何去掉标题栏:

                                一句代码即可,

                    setUndecorated( true);//隐藏标题栏

                第五点,如何实现按钮的特效:

                                       首先需要明白,按钮是可以添加图片的,即Icon,我们只需要把按钮设置到相应大小,然后设置按钮的属性为透明,去掉按钮的显示名称,就可以显示出一个漂亮的按钮了,为此我们还可以为按钮设置圆角,然后还可以设置按钮的鼠标事件,单击或者移动时,可以改变按钮的图片,做出漂亮的效果。

                                         这里做的比较简单,代码如下:

                    logBut.setContentAreaFilled(false);/*异常*/   //设置内容区清空
                    logBut.setIcon(new ImageIcon("images/login.png"));     //设置按钮图标

                第六点,如何实现按钮单击,释放,进入和移出的按钮效果呢?

                                            作者在这里并没有做这样的效果,不过大致思路是这样的:

                                    首先为按钮添加鼠标事件:

                logBut.addMouseListener(new MouseAdapter(){
                   });

                                      然后重写当鼠标移入时的动作

                logBut.addMouseListener(new MouseAdapter() {
                public void mouseEntered(MouseEvent e) {
                        logBut.setIcon(new ImageIcon("路径+要显示的效果图"));
                    }
                });

                            其他的类似。

你可能感兴趣的:(使用java-swing做出一个稍微漂亮一点的登陆注册页面)