运用BeautyEye组件开发Swing登录界面Demo

import org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper;
import org.jb2011.lnf.beautyeye.ch3_button.BEButtonUI;
import org.jb2011.lnf.beautyeye.ch8_toolbar.BEToolBarUI;
import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.*;
import javax.swing.border.Border;
import javax.swing.plaf.BorderUIResource;

public class SwingTest3 {
    private JFrame f = null;
    private JTextField username = new JTextField(10);
    private JPasswordField password = new JPasswordField(10);
    private JLabel user = null;
    private JLabel pwd = null;
    private JButton login = null;
    private JButton reset = null;
    private JCheckBox bas = null;
    private JCheckBox foot = null;
    private JMenuBar menuBar = null;

    public SwingTest3(){
        try {
            BeautyEyeLNFHelper.frameBorderStyle = BeautyEyeLNFHelper.FrameBorderStyle.translucencyAppleLike;
            org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper.launchBeautyEyeLNF();
//            UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
            f = new JFrame("Swing登录界面");
            menuBar = createMenus();
            f.setJMenuBar(menuBar);
            user = new JLabel("用户名:");
            pwd = new JLabel("密  码:");
            bas = new JCheckBox("篮球");
            foot = new JCheckBox("足球");
            login = new JButton("登录");
            reset = new JButton("重置");
            login.setUI(new BEButtonUI().setNormalColor(BEButtonUI.NormalColor.green));
            login.setForeground(Color.white);
            reset.setUI(new BEButtonUI().setNormalColor(BEButtonUI.NormalColor.lightBlue));
            reset.setForeground(Color.white);
            login.addMouseListener(new MouseListener() {
                @Override
                public void mouseClicked(MouseEvent e) {
                    if(null == username.getText() || "".equals(username.getText())) {
                        JOptionPane.showMessageDialog(null, "用户名不能为空");
                        return;
                    }
                    if(null == password.getText() || "".equals(password.getText())) {
                        JOptionPane.showMessageDialog(null, "密码不能为空");
                        return;
                    }
                    if(null != username.getText() && "wbb".equals(username.getText()) && null != password.getText() && "123".equals(password.getText())) {
                        JOptionPane.showMessageDialog(null, "登录成功,欢迎您:" + username.getText());
                    } else {
                        JOptionPane.showMessageDialog(null, "用户名密码错误,请重新输入");
                    }
                }
                @Override
                public void mousePressed(MouseEvent e) { }
                @Override
                public void mouseReleased(MouseEvent e) { }
                @Override
                public void mouseEntered(MouseEvent e) { }
                @Override
                public void mouseExited(MouseEvent e) { }
            });
            reset.addMouseListener(new MouseListener() {
                @Override
                public void mouseClicked(MouseEvent e) {
                    username.setText("");
                    password.setText("");
                }
                @Override
                public void mousePressed(MouseEvent e) { }
                @Override
                public void mouseReleased(MouseEvent e) { }
                @Override
                public void mouseEntered(MouseEvent e) { }
                @Override
                public void mouseExited(MouseEvent e) { }
            });
        } catch (Exception e) {
            e.printStackTrace();
        }

        //条件
        JPanel p = new JPanel();
        //按钮
        JPanel bt = new JPanel();

        //设置行列
        p.setLayout(new GridLayout(3, 2));
        bt.setLayout(new GridLayout(1, 2));

        p.add(user);
        p.add(username);
        p.add(pwd);
        p.add(password);
        p.add(bas);
        p.add(foot);

        bt.add(login);
        bt.add(reset);

        f.add(p, BorderLayout.NORTH);
        f.add(bt, BorderLayout.SOUTH);
//        调置窗体背景全透明并完全隐藏一个窗体的标题栏
//        f.setUndecorated(true);
//        AWTUtilities.setWindowOpaque(f, false);
//        f.getRootPane().setWindowDecorationStyle(JRootPane.NONE);
        f.setVisible(true);
        f.setBounds(800, 300, 400, 400);
        f.pack();
    }

    public JMenuBar createMenus() {
        JMenuItem mi;
        // ***** create the menubar ****
        JMenuBar menuBar = new JMenuBar();
        menuBar.getAccessibleContext().setAccessibleName("工具栏");

        // ***** create File menu
        JMenu fileMenu = (JMenu) menuBar.add(new JMenu("文件"));
        createMenuItem(fileMenu, "新建", "FileMenu.about_mnemonic", "新建文件",null);
        createMenuItem(fileMenu, "保存", "FileMenu.about_mnemonic", "保存文件",null);
        createMenuItem(fileMenu, "删除", "FileMenu.about_mnemonic", "删除文件",null);
        createMenuItem(fileMenu, "另存为...", "FileMenu.about_mnemonic", "另存为...",null);
        fileMenu.addSeparator();
        JMenu editMenu = (JMenu) menuBar.add(new JMenu("编辑"));
        createMenuItem(editMenu, "字体大小", "FileMenu.about_mnemonic", "字体大小",null);
        createMenuItem(editMenu, "颜色", "FileMenu.about_mnemonic", "颜色",null);
        createMenuItem(editMenu, "格式", "FileMenu.about_mnemonic", "格式",null);
        fileMenu.addSeparator();
        editMenu.addSeparator();
        return menuBar;
    }

    public JMenuItem createMenuItem(JMenu menu, String label, String mnemonic,
                                    String accessibleDescription, Action action) {
        JMenuItem mi = (JMenuItem) menu.add(new JMenuItem(label));

//		mi.setBorder(BorderFactory.createEmptyBorder());
        mi.setMnemonic(mnemonic.charAt(0));
        mi.getAccessibleContext().setAccessibleDescription(accessibleDescription);
        mi.addActionListener(action);
        if(action == null) {
            mi.setEnabled(false);
        }
        return mi;
    }

    public static void main(String[] args) {
        //隐藏设置按钮
        UIManager.put("RootPane.setupButtonVisible",false);
//        //定义border颜色
//        Border bd = new BEToolBarUI.ToolBarBorder(
//                UIManager.getColor(Color.green),//Floatable时触点的颜色
//                UIManager.getColor(Color.yellow),//Floatable时触点的阴影颜色
//                new Insets(6,0,11,0)                    //border的默认insets
//        );
//        UIManager.put("ToolBar.border",new BorderUIResource(bd));
        new SwingTest3();
    }
}


评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值