zoukankan      html  css  js  c++  java
  • 登录页面

    1.实验设计

          新建一个类Login继承 java.awt类包里的Frame,定义一个JFrame类的框架f,设置窗口的大小,位置,背景颜色,窗口可见;然后定义一个容器con,容器中组件的布局为6行1列,容器中共存放5个面板:填写登录名面板,填写密码面板,填写验证码面板,存放“登录”按钮的面板,存放“注册”的面板。填写登录名和密码的面板上有提示信息和文本框。验证码面板上有提示信息,文本框和验证码。验证码是RandomStringUtils类函数随机生成的。

    2.流程图

    3.源程序

    import javax.swing.*

    import org.apache.commons.lang.*; 

    import java.awt.*;

    public class Login extends Frame{

    public static void main(String[] args) {
    JFrame f=new JFrame("请登录");//定义一个框架
    f.setSize(400,300);//窗口大小
    f.setBackground(Color.blue);//背景颜色
    f.setLocation(500,400);//位置
    f.setVisible(true);//窗口可见

    Container con=f.getContentPane();//定义一个容器con
    con.setLayout(new GridLayout(6,1));//容器中组件的布局,1列6行



    Panel pan_name=new Panel();//定义一个用于填写登录名的版面
    Label name=new Label("登录名:");//构造方法,标签名称是“登录名”,默认靠左对齐
    pan_name.add(name);//将标签增加到版面上
    TextField t_name=new TextField(30);//用于填写的文本框
    t_name.setText("用户名/邮箱");
    pan_name.add(t_name);//将文本框增加到版面上
    con.add(pan_name);


    Panel pan_password=new Panel();//填写密码的版面
    Label password=new Label("密码:");
    pan_password.add(password);
    JPasswordField t_password=new JPasswordField(20);
    t_password.setEchoChar('*');//写入密码后显示为*
    pan_password.add(t_password);
    con.add(pan_password);

    Panel pan_identify=new Panel();//填写验证码的版面
    Label identify=new Label("验证码:");
    pan_identify.add(identify);
    TextField t_identify=new TextField(20);
    t_identify.setText(" ");
    pan_identify.add(t_identify);
    String code=RandomStringUtils.randomAlphanumeric(5);//code是随机生成的五个随机数
    Label identify_code=new Label(code);
    pan_identify.add(identify_code);
    con.add(pan_identify);


    Panel pan_login=new Panel();//登录按钮的版面
    Button button1=new Button("登录");//定义一个按钮
    button1.setBackground(Color.white);
    pan_login.add(button1);
    con.add(pan_login);

    Panel pan_register=new Panel();//登录注册的版面
    Button button2=new Button("快速注册");//定义一个按钮
    button2.setBackground(Color.white);
    pan_register.add(button2);
    con.add(pan_register);


    }

    }

    4.实验截图

    5.实验总结

            这次实验中最难的是生成验证码,刚开始想用RandomStringUtils类库函数,发现库中没有import org.apache.commons.lang.*的类函数;后来想用java.lang.Math.Random类写生成随机字符的方法来生成验证码,发现很麻烦;最后下载了org.apache.commons jar包,然后导入到项目中。

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
  • 相关阅读:
    关于 NSTimer 和 NSRunLoop 的一些理解
    通过 CocoaPods 集成 WeexSDK 到iOS项目中
    iOS 从相册取出的图片默认 取中间部分 裁剪成方形的
    Trilynn分享了炼数成金邀请码
    highcharts分段显示不同颜色
    H5手机开发锁定表头和首列(惯性滚动)解决方案
    为移动端开发提供纯前端的路由方案
    ionic系列
    2014总结
    margin 相关 bug 系列
  • 原文地址:https://www.cnblogs.com/wl2017/p/7624906.html
Copyright © 2011-2022 走看看