用java模拟设计一个简单的“用户注册”程序。当用户输入用户名和密码时,单击“注

2020 - 9 - 26 TAG :

所有功能均已实现,如有不满意的地方我再修改import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.io.*;public class Login extends JPanel{ //声明各个控件 private JLabel user_name_label = null; private JLabel password_label = null; private JTextField user_name_text = null; private JTextField password_text = null; private JButton login = null; private JButton regist = null; //声明文件用以保存注册信息 private final String file_name = "注册.txt"; public Login() { //获得各个控件并且为之设置显示文本 user_name_label = new JLabel(); user_name_label.setText("姓名:"); password_label = new JLabel(); password_label.setText("密码:"); user_name_text = new JTextField(); password_text = new JTextField(); login = new JButton(); login.setText("登录"); regist = new JButton(); regist.setText("注册"); //设置面板的布局为网格布局 setLayout(new GridLayout(3,2)); //将控件添加到面板里 add(user_name_label); add(user_name_text); add(password_label); add(password_text); add(login); add(regist); //为两个按钮添加监听 regist.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String name = user_name_text.getText().toString(); String password = password_text.getText().toString(); String str = null; String[] result = null; try { if((name.length() == 0)&&(password.length() == 0)) { int a = JOptionPane.showConfirmDialog(null,"请输入用户名和密码","确认对话框",JOptionPane.YES_NO_OPTION); throw new Exception(""); } else if(name.length() == 0) { int a = JOptionPane.showConfirmDialog(null,"请输入用户名","确认对话框",JOptionPane.YES_NO_OPTION); } else if(password.length() == 0) { int a = JOptionPane.showConfirmDialog(null,"请输入密码","确认对话框",JOptionPane.YES_NO_OPTION); } InputStream in = new FileInputStream(file_name); InputStreamReader reader = new InputStreamReader(in); BufferedReader buffered_reader = new BufferedReader(reader); while((str = buffered_reader.readLine()) != null) { result = str.split(" "); if(result[0].equals(name)) { int a = JOptionPane.showConfirmDialog(null,"该用户已存在,请重新注册","确认对话框",JOptionPane.YES_NO_OPTION); throw new Exception(""); } } OutputStream out = new FileOutputStream(file_name,true); OutputStreamWriter writer = new OutputStreamWriter(out); BufferedWriter buffered_writer = new BufferedWriter(writer); buffered_writer.write(name+" "+password); buffered_writer.newLine(); buffered_writer.close(); int a = JOptionPane.showConfirmDialog(null,"恭喜你,注册成功!","确认对话框",JOptionPane.YES_NO_OPTION); } catch(Exception e1) { } } }); login.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String name = user_name_text.getText().toString(); String password = password_text.getText().toString(); String result = null; try { if((name.length() == 0)&&(password.length() == 0)) { int a = JOptionPane.showConfirmDialog(null,"请输入用户名和密码","确认对话框",JOptionPane.YES_NO_OPTION); throw new Exception(""); } else if(name.length() == 0) { int a = JOptionPane.showConfirmDialog(null,"请输入用户名","确认对话框",JOptionPane.YES_NO_OPTION); } else if(password.length() == 0) { int a = JOptionPane.showConfirmDialog(null,"请输入密码","确认对话框",JOptionPane.YES_NO_OPTION); } InputStream in = new FileInputStream(file_name); InputStreamReader reader = new InputStreamReader(in); BufferedReader buffered_reader = new BufferedReader(reader); while((result = buffered_reader.readLine()) != null) { if(result.equals(name+" "+password)) { int a = JOptionPane.showConfirmDialog(null,"登陆成功","确认对话框",JOptionPane.YES_NO_OPTION); break; } } if(!(result.equals(name+" "+password))) { int a = JOptionPane.showConfirmDialog(null,"用户名或密码错误","确认对话框",JOptionPane.YES_NO_OPTION); } } catch(Exception e1) { //e1.printStackTrace(); } } }); } public static void main(String[] args) { JFrame frame = new JFrame(); frame.setSize(500,500); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLayout(new BorderLayout()); frame.add(new Login(),BorderLayout.NORTH); }}

170 人围观 / 0 条评论 ↓快速评论↓

JAVA同时输入用户名和密码_用java模拟设计一个简单的“用户注册”程序。当用户输入用户名和密码时,单击“注...相关推荐

  1. java毕业设计——基于java+MMAS的蚁群算法路由选择可视化动态模拟设计与实现(毕业论文+程序源码)——蚁群算法路由选择可视化动态模拟

    基于java+MMAS的蚁群算法路由选择可视化动态模拟设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+MMAS的蚁群算法路由选择可视化动态模拟设计与实现,文章末尾附有本毕业设计的 ...

  2. 编程设计一个简单的计算器程序,要求根据用户从键盘输入的表达式,操作数

    编程设计一个简单的计算器程序,要求根据用户从键盘输入的表达式,操作数 首先,先写出各类计算的函数,参数从主函数中提取,返回计算后所得的值 因计算器不只要求能计算加减乘除,所以所有函数类型都为doubl ...

  3. c语言12之编程设计一个简单的计算器程序,要求根据用户从键盘输入的表达式:操作数1 运算符op 操作数2 计算表达式的值,指定的运算符为加减乘除。

    题目: 设计一个简单的计算器程序,要求根据用户从键盘输入的表达式: 操作数1 运算符op 操作数2 计算表达式的值,指定的运算符为加减乘除. 源代码: #include<stdio.h> ...

  4. C#——设计一个简单的窗体程序,在文本框中输入两个点的坐标值,单击“确定”按钮时显示两点之间的距离。

    要求定义一个Point类,包括 (1)两个私有字段表示两个坐标值. (2)一个构造函数通过传入的参数对坐标值初始化 (3)两个只读属性对坐标值的读取 (4)一个方法包含一个Point类对象作为参数对象 ...

  5. java获取界面输入数字_通过JAVA设计 GUI 界面的计算器程序,用户可以通过鼠标依次输入参加计算的数值,进行加、减、乘、...

    通过JAVA设计 GUI 界面的计算器程序,用户可以通过鼠标依次输入参加计算的数值,进行加.减.乘. 2016-08-22 0 0 0 4.0 分 其他 1 积分下载 如何获取积分? 通过JAVA设计 ...

  6. Java黑皮书课后题第8章:***8.35(最大块)给定一个元素为0或者1的方阵,编写程序,找到一个元素都为1的最大的子方阵。程序提示用户输入矩阵的行数。然后显示最大的子方阵的第一个元素、行数

    ***8.35(最大块)给定一个元素为0或者1的方阵,编写程序,找到一个元素都为1的最大的子方阵.程序提示用户输入矩阵的行数.然后显示最大的子方阵的第一个元素.行数 题目 题目描述与运行示例 破题 代 ...

  7. Java黑皮书课后题第7章:*7.1(指定等级)编写一个程序读入学生成绩,得到最高分best,然后根据下面的规则给出等级值。程序提示用户输入学生总数,然后提示用户输入所有的分数,最后显示等级给出结论

    7.1(指定等级)编写一个程序读入学生成绩,得到最高分best,然后根据下面的规则给出等级值 题目 题目描述与运行示例 破题 代码 题目 题目描述与运行示例 *7.1(指定等级)编写一个程序读入学生成 ...

  8. Java黑皮书课后题第5章:*5.30(金融应用:复利值)假设你每月在储蓄账户上多存100美元,年利率为5%,那么每月利率是0.05 / 12 = 0.00417。编写程序提示用户输入数据显示定月钱数

    5.30(金融应用:复利值)假设你每月在储蓄账户上多存100美元,年利率为5%,那么每月利率是0.05 / 12 = 0.00417.编写程序提示用户输入数据显示定月钱数 题目 题目概述 破题 代码 ...

  9. Java黑皮书课后题第3章:*3.33(金融:比较成本)假设你要通过两种不同的包裹运输大米。你可能会编写一个程序来比较成本,该程序提示用户输入每个包裹的重量和价格,然后显示具有更优惠的包裹

    *3.33(金融:比较成本)假设你要通过两种不同的包裹运输大米.你可能会编写一个程序来比较成本,该程序提示用户输入每个包裹的重量和价格,然后显示具有更优惠的包裹 题目 题目概述 运行示例 破题 代码 ...

最新文章

  1. ip and port check 正则
  2. MSB6006: “cmd.exe”已退出,代码为 3.
  3. [转]Tomcat启动错误的几件事
  4. linux命令:man,tree.find,grep,ln,tar,管道,重定向
  5. mysql数据冗余_MySQL冗余数据的三种方案
  6. 并发译文翻译计划(二)
  7. rabbitMQ教程 spring整合rabbitMQ代码实例
  8. java记事本教程_使用记事本开发java程序的步骤
  9. 多因子模型的业绩归因评价
  10. Java开发工具 IntelliJ IDEA(idea使用教程,手把手教学)内容很全,一篇管够!!!
  11. 13款国内外知名PHP集成环境的优缺点分析,PHP集成环境推荐、PHP绿色集成环境推荐
  12. 通过谷歌搜索指定大小的图片
  13. 简单OR复杂?机器学习专家为你解密企业风险量化模型
  14. 应用于大数据分析的工作流调度系统
  15. git 删除git管理_使用Git管理多媒体文件
  16. 饼图指北(Pie Chart)
  17. overlayfs源代码解析
  18. java learn 日期
  19. 软件质量控制相关知识
  20. 目标检测 | End-to-end Lane Detection through Differentiable Least-Squares Fitting

热门文章

  1. 多模块后带来的问题解决方法 - OSGI原形(.NET)
  2. IDEA中引用不到HttpServlet的解决方案
  3. Struts2中采用Json返回List对象数据为空解决方案
  4. python:json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes问题解决
  5. laravel中TokenMismatchException异常处理
  6. Java ConcurrentModificationException异常原因和解决方法
  7. 如何在不使用任何图像或跨度标签的情况下通过CSS在UL / LI html列表中设置子弹颜色[复制]
  8. 最近后缀.Scaletto,.com}KBK,com}BET,.Fuchsi勒索病毒开始爆发…
  9. dns学习笔记04-配置slave区域
  10. vue+element-ui动态生成多级表头,并且将有相同字段下不同子元素合并为同一个...