最近在看的Java入门书是《Head First Java》,一本很棒的Java书。

老师要求的程序流程图我没有,之前我们的做法是写完代码再画流程图,我想这样的做法是不对的,流程图应该是在写代码之前设计思路的一种体现,我们很多同学都把这个当成了一种负担,急着写代码,觉得实现了某种功能之后作业就完成了,到提交时发现还有流程图,好吧,画吧。这是一种常见的思维方式,我想不出在这种思维方式背后是怎样一种体制的导致。

《Head First Java》这本书叫我们查API,但是我不是一个聪明的学生,我还得一段时间才能看得懂API。

以下是我程序的截图以及源代码。

点击更换是可以实现的。

下面是源代码,自己感觉很乱,也没有注释,并且没有在发博客之前刻意加上注释,我想我应该在以后培养这些好习惯。

import javax.swing.*;

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

public class Login01 {

private JFrame frame;

private JButton button1,button2,button3;

private int []a=new int[6];

private String b;//,name,keyword,checkID;

public static void main(String[] args)

{

Login01 login=new Login01();

login.go();

}

public void go()

{

frame=new JFrame();

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel panel1=new JPanel();//账号,验证码

JPanel panel11=new JPanel();//账号

JPanel panel12=new JPanel();//密码

JPanel panel13=new JPanel();//验证码

JPanel panel2=new JPanel();

JPanel panel3=new JPanel();

JLabel lable0=new JLabel("石家庄铁道大学图书管理系统");

Font bigFont =new Font("serif",Font.BOLD,28);

lable0.setFont(bigFont);

create_b();

button1=new JButton(b+"点击更换");

button1.addActionListener(new BListener());

button2=new JButton("登陆");

button2.addActionListener(new LoginListener());

button3=new JButton("注册");

button3.addActionListener(new RegisteListener());

JTextField field1=new JTextField(10);

JTextField field2=new JTextField(10);

JTextField field3=new JTextField(10);

/*name=field1.getText();

keyword=field2.getText();

checkID=field3.getText();*/

//System.out.println(name+keyword+checkID);

//panel3.setBackground(Color.WHITE);

//panel2.setBackground(Color.WHITE);

//System.out.print(b);

panel2.add(lable0);

panel11.add(new JLabel("账号:"));

panel11.add(field1);

panel12.add(new JLabel("密码:"));

panel12.add(field2);

panel13.add(new JLabel("验证码:"));

panel13.add(field3);

panel1.add(panel11);

panel1.add(panel12);

panel1.add(panel13);

panel13.add(button1);

panel1.setLayout(new BoxLayout(panel1,BoxLayout.Y_AXIS));

panel3.add(button2);

panel3.add(button3);

frame.getContentPane().add(BorderLayout.NORTH, panel2);

frame.getContentPane().add(BorderLayout.CENTER, panel1);

frame.getContentPane().add(BorderLayout.SOUTH, panel3);

frame.setSize(600,400);

frame.setVisible(true);

}

class BListener implements ActionListener{

public void actionPerformed(ActionEvent e)

{

create_b();

button1.setText(b+"点击更换");

//frame.repaint();

}

}

class LoginListener implements ActionListener{

public void actionPerformed(ActionEvent e)

{

//待完成

}

}

class RegisteListener implements ActionListener{

public void actionPerformed(ActionEvent e)

{

//待完成

}

}

public void create_b()

{

b="";

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

{

a[i]=(int)(Math.random()*10);

b+=a[i];

}

}

/*public void ifRight(String theEnter)

{

if(!theEnter.equals(b))

{

//待完成

}

}*/

}

java语言登陆界面(菜鸟版)的更多相关文章

  1. 数据结构与抽象 Java语言描述 第4版 pdf (内含标签)

    数据结构与抽象 Java语言描述 第4版 目录 前言引言组织数据序言设计类P.1封装P.2说明方法P.2.1注释P.2.2前置条件和后置条件P.2.3断言P.3Java接口P.3.1写一个接口P.3. ...

  2. java语言导学(5版)--第12章并发之二

    1不可变对象 概念:(immutable)对象创建后,状态不可更改.不可变对象在并发程序中尤其有用,因状态不可变,不会被线程干扰,也不会出现不一致状态. 书中通过实例是可变的类,并从此类衍生出一个不可 ...

  3. Java EE登陆界面生成随机数防止恶意注册或者登录

    package cn.com; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.a ...

  4. 基于Oracle数据库登陆界面及功能实现 Java版

    首先要在Oracle数据库创建表文件,包括建立表头以及关键字(唯一标识符),此次程序所用的表名称为SW_USER_INFO,表头有UNAME.UKEY.USEX等,关键字为UCC,然后添加一条记录,用 ...

  5. 用java写一个用户登陆界面

    一.课堂测试源代码及其结果截图 用java的swing写一个用户登录界面,采用网格布局.源代码如下: /** * */package LiuLijia; import java.awt.CardLay ...

  6. IntelliJ IDEA for Mac(Java 语言开发的集成环境)破解版安装

    1.软件简介    IntelliJ IDEA 是 macOS 系统上一款 java 语言开发的集成环境,IntelliJ 在业界被公认为最好的 java 开发工具之一,尤其在智能代码助手.代码自动提 ...

  7. 菜鸟笔记 -- Chapter 4 Java语言基础

    在Chapter3中我们写了第一个Java程序Hello World,并且对此程序进行了分析和常见错误解析.那么我们有没有认真观察一下Java程序的基本结构呢?本节我就来聊一下Java程序的基本结构( ...

  8. 使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网)

    使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网) 一,前期准备 1,Java IDE(Eclipse)与JDK的安装与配置jdk-15.0.1-免配置路径版提取码:earu免安装版 ...

  9. Java 语言实现简易版扫码登录

    基本介绍 相信大家对二维码都不陌生,生活中到处充斥着扫码登录的场景,如登录网页版微信.支付宝等.最近学习了一下扫码登录的原理,感觉蛮有趣的,于是自己实现了一个简易版扫码登录的 Demo,以此记录一下学 ...

随机推荐

  1. 11月29日 The Rails philosophy 完成rails on guide 的第一章getting started with rails

    the rails philosophy includes two major guiding principles: Don't repeat yourself: DRY is a principl ...

  2. codeforces708b// Recover the String //AIM Tech Round 3 (Div. 1)

    题意:有一个01组成的串,告知所有长度为2的子序列中,即00,01,10,11,的个数a,b,c,d.输出一种可能的串. 先求串中0,1的数目x,y. 首先,如果00的个数a不是0的话,设串中有x个0 ...

  3. Vue音乐项目笔记(二)

    1. Vuex https://blog.csdn.net/weixin_40814356/article/details/80347366 编写: 然后,在main.js中引入 在组件中改变stat ...

  4. PAT 1013 Battle Over Cities

    1013 Battle Over Cities (25 分)   It is vitally important to have all the cities connected by highway ...

  5. Beta阶段——第6篇 Scrum 冲刺博客

    Beta阶段--第6篇 Scrum 冲刺博客 标签:软件工程 一.站立式会议照片 二.每个人的工作 (有work item 的ID) 昨日已完成的工作 人员 工作 林羽晴 完成了函数的编写,提供报表数 ...

  6. 使用ajax提交form表单,包括ajax文件上传【转载】

    [使用ajax提交form表单,包括ajax文件上传] 前言 转载:作者:https://www.cnblogs.com/zhuxiaojie/p/4783939.html 使用ajax请求数据,很多 ...

  7. 十一、持久层框架(MyBatis)

    一.基于注解方式的CRUD 把xml方式的CRUD修改为注解方式 之前在xml中配置,是在<mapper></mapper>标签下写CRUD <mapper namesp ...

  8. qml 设置tooltip,Customizing ToolTip

    Button {            id: btn            text: "Tip"            anchors.horizontalCenter: pa ...

  9. 码云git使用一(上传本地项目到码云git服务器上)

    主要讲下如果将项目部署到码云git服务器上,然后使用studio导入git项目,修改本地代码后,并同步到码云git上面. 首先:我们在码云上注册账号并登陆.官网(https://git.oschina ...

  10. Win10系列:JavaScript小球运动示例

    通过前面内容的学习,相信读者已经对开发基于JavaScript的Windows应用商店应用有了一定的了解,本小节通过一个小球运动的示例来介绍如何新建一个JavaScript的Windows应用商店项目 ...