运用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();
    }
}

运用BeautyEye组件开发Swing登录界面Demo,布布扣,bubuko.com

时间: 2024-10-04 16:28:41

运用BeautyEye组件开发Swing登录界面Demo的相关文章

豪哥学ios开发之登录界面

首先在ViewController.h文件中: #import <UIKit/UIKit.h> #import "SRWebSocket.h" //继承SRWebSocket.h,作为登录服务器 @interface ViewController : UIViewController<UITextFieldDelegate,SRWebSocketDelegate> //- (IBAction)SaveLogin:(id)sender; //与SB联系账号输入,密

登录界面Demo

今天记载一个Demo,这个是我练习项目中用到,供新手看看,界面图: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head lang="en&

Django Form组件实例:登录界面[Form表单提交,Ajax提交]

"""本例中使用Form和Ajax进行了数据提交,Form提交有一个问题,就是输入错误的数据,刷新之后原有的数据会丢失.注意到Form组件可以生成HTML标签,将Form生成的对象传到前端,就可以保留原有的内容,具体见下文:""" 1 from django.shortcuts import * 2 from app02 import models 3 import json 4 5 # Create your views here. 6 def

Java图形界面开发—简易登录注册小程序

登录注册小代码,将学过的一些小知识融合在一起进行了使用,加深印象.本例中如果有注释不详细的地方,详见其它博客. Java程序操作数据库SQLserver详解 功能介绍:简单的登录注册系统,使用了数据库sqlserver.单例模式.正则表达式以及图形化开发等知识. 1.在登录界面,可以登录或者注册用户. 注册用户界面,按照正则表达式规定的格式要求来输入信息,若有误,则重新输入. 2.点击注册,首先连接SQLserver数据库,连接成功则会判断该用户名是否已经存在,若存在,则给出提示.反之则进行注册

Android开发实例之miniTwitter登录界面的实现

原文: http://www.jizhuomi.com/android/example/134.html 本文要演示的Android开发实例是如何完成一个Android中的miniTwitter登录界面,下面将分步骤讲解怎样实现图中的界面效果,让大家都能轻松的做出美观的登录界面. miniTwitter登录界面效果图 先贴上最终要完成的效果图: miniTwitter登录界面的布局分析 首先由界面图分析布局,基本可以分为三个部分,下面分别讲解每个部分. 第一部分是一个带渐变色背景的LinearL

Android开发——记账App开发项目分享(一)之登录界面

一.题外话: 本人java基础很一般,学java的时候就写了个notepad的demo,为了顺应时代的发展在去年10月份开始学习android,到现在中间渐渐续续的持续了将近5个月,刚开始我也是下了一堆android的视频,很可惜只看了前2章老罗的视频,工作的人了没那么大的耐心和时间慢慢看下去,依照视频和网上资料把android的开发环境搭起来了,android SDK+eclipse ,中间也尝试了使用android studio ,但是一旦出了问题,查找的资料相对Eclipse要少很多,所以

Android 仿 窗帘效果 和 登录界面拖动效果 (Scroller类的应用) 附 2个DEMO及源代码

在android学习中,动作交互是软件中重要的一部分.当中的Scroller就是提供了拖动效果的类,在网上.比方说一些Launcher实现滑屏都能够通过这个类去实现.以下要说的就是上次Scroller类学习的后的实践了. 假设你还不了解Scroller类,那请先点击:Android 界面滑动实现---Scroller类 从源代码和开发文档中学习(让你的布局动起来) 了解之后再阅读下面内容.你会发现原来实现起来非常easy. 之前说到过.在广泛使用的側边滑动导航开源库 --SlidingLayer

java swing开发的图像生成器demo实例源代码下载,实现绘制图像,截屏功能。

一个类似于画画的javase程序 绘制图形 原文:java swing开发的图像生成器demo实例源代码下载,实现绘制图像,截屏功能. java源代码下载地址:http://www.zuidaima.com/share/1550463330028544.htm 获取屏幕 打开调色板

Android 仿 窗帘效果 和 登录界面拖动效果 (Scroller类的应用) 附 2个DEMO及源码

在android学习中,动作交互是软件中重要的一部分,其中的Scroller就是提供了拖动效果的类,在网上,比如说一些Launcher实现滑屏都可以通过这个类去实现.下面要说的就是上次Scroller类学习的后的实践了. 如果你还不了解Scroller类,那请先点击:Android 界面滑动实现---Scroller类 从源码和开发文档中学习(让你的布局动起来) 了解之后再阅读以下内容,你会发现原来实现起来很简单. 之前说到过,在广泛使用的侧边滑动导航开源库 --SlidingLayer其实就是