实验任务四

1,出现设计思想

(1)先定义文本框、密码框和验证码框的组件

(2)定义面板和按钮的个数

(3)定义公有的虚构方法,通过对象实例化来调用

(4)利用Random类来实现生成0-9的随机数

(5)设置面板的布局,设置面板的显示

2,程序流程图

3,源程序

package 登录界面2;

import javax.swing.*;

import java.util.Random;

import java.awt.*;   //导入必要的包

public class register extends JFrame{

JTextField jTextField ;//定义文本框组件

JPasswordField jPasswordField;//定义密码框组件

JTextField JTextField1;

JLabel jLabel1,jLabel2,jLabel3,jLabel22,jLabel33;

JPanel jp1,jp2,jp3,jp4,jp5;//设置面板的个数

JButton jb1,jb2; //创建按钮

public register(){

String result = "";

Random ran=new Random();

for(int i = 0 ; i < 6 ; i ++)

{

int intVal =ran.nextInt (0+9);//随机生成0-9的随机数

result = result + intVal;

}

jTextField = new JTextField(20);

jPasswordField = new JPasswordField(10);

JTextField1=new JTextField(15);

jLabel1 = new JLabel("用户名");

jLabel2 = new JLabel("密码");

jLabel3=new JLabel("验证码");

jLabel33=new JLabel(""+result);

jLabel22=new JLabel("忘记用户名/密码?");

jb1 = new JButton("登录");

jb2 = new JButton("快速注册");

jp1 = new JPanel();

jp2 = new JPanel();

jp3 = new JPanel();

jp4 = new JPanel();

jp5 = new JPanel();

//设置布局

this.setLayout(new GridLayout(5,1));

jp1.add(jLabel1);

jp1.add(jTextField);//第一块面板添加用户名和文本框

jp2.add(jLabel2);

jp2.add(jPasswordField);//第二块面板添加密码和密码输入框

jp2.add(jLabel22);

jp3.add(jLabel3);

jp3.add(JTextField1);

jp3.add(jLabel33);

jp4.add(jb1);

jp4.add(jb2); //第四块面板添加确认和取消

this.add(jp1);

this.add(jp2);

this.add(jp3);

this.add(jp4);//将四块面板添加到登陆框上面

//设置显示

this.setSize(300, 200);

//this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

this.setTitle("登陆");

/*if(JTextField1.equals(jLabel33)){

JOptionPane.showMessageDialog(null,"欢迎注册","登录成功",JOptionPane.PLAIN_MESSAGE);

}

else

JOptionPane.showMessageDialog(null,"验证码输入错误","登录失败",JOptionPane.PLAIN_MESSAGE);*/

}

public static void main(String[] args){

new register();

}

}

4,实现结果截图

5,实验总结

(1)“”+数字生成的是字符串数字,“”+(char)数字生成的是数字对应的字母

(2)用java.util包中的Random类能随机生成数字

(3)JLabek能添加面板输入框前后的一些功能,例如输出文字

(4)JPanel能设置面板的个数及名字

(5)JButton能创建按钮

(6)setsize用来设置面板的大小

(7)JTexttField定义文本框  JPasswordField定义密码框

实验任务五

1,出现设计思想

先随机生成一个数字,然后输入一个数字和生成的数字进行大小比较,如果猜大了或猜小了就给出提示,重新输入数字,直到猜对,输出该数字,循环是否继续。

2,程序流程图

3,源代码

package 猜数字游戏;

import javax.swing.JOptionPane;

import java.util.Random;

public class GussNumber {

public static void main(String[] args){

Random ran=new Random();

int n=1;

while(n==1){

int x=ran.nextInt(1+100);

String s1=JOptionPane.showInputDialog("写下你猜的数字");

int a=Integer.parseInt(s1);

do{

if(a>x)

JOptionPane.showMessageDialog(null,"猜大了","结果",JOptionPane.PLAIN_MESSAGE);

else

JOptionPane.showMessageDialog(null,"猜小了","结果",JOptionPane.PLAIN_MESSAGE);

s1=JOptionPane.showInputDialog("重新猜的数字");

a=Integer.parseInt(s1);

}while(a!=x);

if(a==x)

JOptionPane.showMessageDialog(null,"恭喜你!猜对了\n该数字是"+x,"结果",JOptionPane.PLAIN_MESSAGE);

String s2=JOptionPane.showInputDialog("是否继续?\n1,继续 2,结束");

n=Integer.parseInt(s2);

}

}

}

4,运行结果截图

5,编译错误分析(总结)

在比较输入的数字和随机的数字时要写入一个循环

java实现登录的验证码和猜数字游戏_图形化界面的更多相关文章

  1. java实现多个数字求和_图形化界面

    一,设计思想 1,通过简单的窗口实现多个数字的输入与输出. 2,可通过用户输入数字的数量来实现多个数字的求和. 3,定义整型数组变量number和字符串型数组变量integer,将输入的字符串变量赋给 ...

  2. Java初学者作业——实现控制台的猜数字游戏。游戏运行时产生一个1~100之间的随机数字

    返回本章节 返回作业目录 需求说明: (1)实现控制台的猜数字游戏.游戏运行时产生一个1-100之间的随机数字 (2)要求用户从控制台输入数字,若输入的数字比随机数小,则输出"太小了,再大一 ...

  3. 黑马程序员:Java基础总结----GUI图形化界面

    黑马程序员:Java基础总结 GUI图形化界面   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流!   GUI(Graphical User Interface)图形化界 ...

  4. java 猜数字游戏

    作用:猜数字游戏.随机产生1个数字(1~10),大了.小了或者成功后给出提示. 语言:java 工具:eclipse 作者:潇洒鸿图 时间:2016.11.10 >>>>> ...

  5. Java完成简单猜数字游戏v2.0

    猜数字游戏v2.0 优化了获取随机数.输入数据超出边界值的代码,并增加了异常处理,能够在玩家输入错误数据错误时给出可靠指引,希望对和我一样的新人有帮助, 最后希望有大神愿意帮我解决代码优化的问题,谢谢 ...

  6. java使用for循环做猜数字游戏

    package org.llh.test;import java.util.Random;import java.util.Scanner;/** * 猜数字游戏 *  * @author llh * ...

  7. 猜数字游戏 在控制台运行--java详解!了;来玩

    import java.util.Scanner;//导入包 import java.util.Scanner; 注意格式 符号的使用 public class Demo{ //猜数字游戏 练习 pu ...

  8. java & python猜数字游戏对比

    1.java版 package day03; import java.util.Random;import java.util.Scanner; /** * 猜数字游戏 * 随机生成一个1-100之间 ...

  9. Java(控制台输出)实现猜数字小游戏

    import java.util.Scanner; import java.util.Random; public class GuestNum{ public static void main(St ...

随机推荐

  1. BZOJ 2161 布娃娃 (主席树)

    题面 想了一个主席树做法 我们把每个区间的两个端点拆开 对$L,R$分别从小到大排序,分别从左到右依次把对应标号的$c_{i}$插入到权值主席树里 每次查询$p_{i}$,在排序后的$L,R$数组上分 ...

  2. P1265 公路修建 (prim)

    题目描述 某国有n个城市,它们互相之间没有公路相通,因此交通十分不便.为解决这一"行路难"的问题,政府决定修建公路.修建公路的任务由各城市共同完成. 修建工程分若干轮完成.在每一轮 ...

  3. mysql 每个月创建新表

    1.CREATE DEFINER=`root`@`%` PROCEDURE `aa`()BEGIN SET @sqlstr = CONCAT('create table cdrpbx10_',DATE ...

  4. redis_ 5 集群

    [转自 ]https://www.cnblogs.com/hjwublog/p/5681700.html#_label0 Redis集群简介 Redis 集群是3.0之后才引入的,在3.0之前,使用哨 ...

  5. Memcache Redis 与Mogodb优缺点

    MemcachedMemcached的优点: Memcached可以利用多核优势,单实例吞吐量极高,可以达到几十万QPS(取决于key.value的字节大小以及服务器硬件性能,日常环境中QPS高峰大约 ...

  6. POJ 2133

    类似于DP一样做,但这题有个大坑,自己看DIS吧.... #include <iostream> #include <cstdio> #include <cstring& ...

  7. 轻松学习JavaScript十二:JavaScript基于面向对象之创建对象(一)

    这一次我们深入的学习一下JavaScript面向对象技术,在学习之前,必要的说明一下一些面向对象的一些术语. 这也是全部面对对象语言所拥有的共同点.有这样几个面向对象术语: 对象 ECMA-262把对 ...

  8. U盘安装 CentOS 64bit (dell c6100, CentOS6.3, 64bit)

    在淘宝买了一个server,dell c6100,64bit, 曾经系统是black apple.近期又买了一块企业级硬盘打算装CentOS. 综合各方面原因决定安装6.3版本号. 我參考了http: ...

  9. RecyclerView的点击事件

    RecyclerView 一.简单介绍 这个是谷歌官方出的控件.使我们能够很easy的做出列表装的一个控件,当然recyclerview的功能不止这些,它还能够做出瀑布流的效果,这是一个很强大的控件, ...

  10. POJ1274 The Perfect Stall 二分图,匈牙利算法

    N头牛,M个畜栏,每头牛仅仅喜欢当中的某几个畜栏,可是一个畜栏仅仅能有一仅仅牛拥有,问最多能够有多少仅仅牛拥有畜栏. 典型的指派型问题,用二分图匹配来做,求最大二分图匹配能够用最大流算法,也能够用匈牙 ...