在员工管理的GUI练习中加入数据验证。也就是在添加对象进数组之前,先作数据合法性的验证,数据合法再作添加。 姓名:2个以上的字母或汉字 性别:必须是男或女 年龄:必须为数字 电话:13、15、18开

java使用 GUI 设计有学生姓名,年龄,注册,性别,擅长java还是c,自我介绍界面,当点击确定按钮时,系统显示姓名,年龄,性别,擅长,自我介绍... 在 Java 中使用 GUI 设计有学生姓名、年龄、注册、性别、擅长 Java 还是 C、自我介绍界面,当点击确定按钮时,系统会显示学生的姓名、年龄、性别、擅长的编程语言、自我介绍。 可以使用 Java 的 GUI 工具包,如 Swing 或 JavaFX,来创建这样的界面。首先,需要设计界面,在界面上放置文本框、标签和按钮等组件。然后,需要添加事件监听器,在点击确定按钮时获取文本框中的输入值,并... 阅读详情

在员工管理的GUI练习中加入数据验证。也就是在添加对象进数组之前,先作数据合法性的验证,数据合法再作添加。

 

姓名:2个以上的字母或汉字

性别:必须是男或女

年龄:必须为数字

电话:13、15、18开始的11位数字 或者  028-99823345 (区号是三位和四位的数字。电话为7-8位的数字)


员工验证
package work;

public class Staff {
    private String name;
    private int age;
    private String sex;
    private String tel;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getTel() {
        return tel;
    }

    public void setTel(String tel) {
        this.tel = tel;
    }

}

这里我写了一个架包需要鼠标右键build path一下,你就会看到奶牛瓶了

package work;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JOptionPane;

import component.MyButton;
import component.Mytest;

public class MainJFrame extends JFrame{
    private   Mytest workName = new  Mytest("姓名", 60, 40, this);
    private  Mytest workAge = new  Mytest("年龄", 60, 100, this);
    private  Mytest workSex = new  Mytest("性别", 60, 160, this);
    private  Mytest workTel = new  Mytest("电话", 60, 220, this);
  
    
    private MyButton addButton = new MyButton("添加", 40, 280, this);
    
    static int num = 0;
    public static Staff [] workers = new Staff[2];
    
    public MainJFrame(){
        this.setTitle("我的窗体");
        this.setLayout(null);
         MyButton showButton = new MyButton("显示", 140, 280, this);
         MyButton findButton = new MyButton("查找", 240, 280, this);
         
        /**添加*/
        addButton.addActionListener(new ActionListener() {
            
            @Override
            public void actionPerformed(ActionEvent arg0) {
                addnum ();
            }
        });
        /**显示*/
        showButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                shownum();
            }
        });
        /**查找*/
        findButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                findnum();
            }
        });
        
        this.setSize(400, 400);
        this.setVisible(true);
        this.setDefaultCloseOperation(3);
        this.setLocationRelativeTo(null);
    
    }
    /**添加方法*/
    public void addnum (){
        
        String info = "";
        if(workName.getText().matches("[a-zA-Z\\u4e00-\\u9fa5]{2,}") == false){
            info += "姓名必须是2位以上的字母或汉字\n";
        }
        if(workAge.getText().matches("[0-9]{1,2}")== false){
            info += "年龄必须是数字\n";
        }
        if(workSex.getText().matches("(男|女)")== false){
            info += "性别必须是男或女\n";
        }
        if(workTel.getText().matches("1(3|5|8)[0-9]{9}|[0][0-9]{2,3}-[0-9]{8}")== false){
            info += "电话必须是13、15、18开始的11位数字 或者  028-99823345\n";
        }
        if (info != ""){
            JOptionPane.showMessageDialog(null, info);
            return;
        }
        Staff worker = new Staff();
        worker.setName(workName.getText());
        worker.setAge(Integer.parseInt(workAge.getText()));
        worker.setSex(workSex.getText());
        worker.setTel(workTel.getText());
        workers[num] = worker;
        num++;
        JOptionPane.showMessageDialog(null, "添加成功");
        if (num == workers.length){
            addButton.setEnabled(false);
        }
        workName.setText("");
        workAge.setText("");
        workSex.setText("");
        workTel.setText("");
    }
    /**显示方法*/
    public void shownum (){
        String s = "姓名     "+"年龄     "+"性别     "+"电话\n";
        for(int i = 0 ;i <num ;i++){
            s+= workers[i].getName()+ "         " + workers[i].getAge()+ "         " +
                    workers[i].getSex()+ "      " + workers[i].getTel()+"\n";
        }
        JOptionPane.showMessageDialog(null, s);
    }
    /**查找方法*/
    public void findnum(){
        int m = -1;
        
        for(int i = 0;i< num;i++){
            if((workName.getText()).equals(workers[i].getName())){
                    m=i;
            }
        }
        
        if( m ==-1){
            JOptionPane.showMessageDialog(null, "找不到此人");
        }else {
            workAge.setText(workers[m].getAge()+"");
            workSex.setText(workers[m].getSex());
            workTel.setText(workers[m].getTel());
        }

    }
    
    
    
    public static void main(String[] args) {
        MainJFrame meun = new MainJFrame();

    }

}


python3基础之选择语句if 选择语句if 1.语法 if 条件1: 语句块 elif 条件2: 语句块 else: 语句块 sex = input("请输入性别:") if sex == "男": print("您好,先生!") elif sex == "女": print("您好,女士") else: print("性别未知") 输出结果为: 请输入性别:男 您好,先生! 调试:让程序中断,语句依次执行 调试的目的: 1.审查程序运行时变量取值。 2.审查程序运行的流程 调试的步骤: 1.加断点 2 阅读详情

相关推荐

C#Winform课程设计:学生兴趣调查

设计一个学生兴趣调查界面并完成要求功能。设计画面如示例图所示。(40 分) 要求: 1. 学生的调查信息有 学号:3-10 位数字文本,且头1 位为“2” 姓名:头两个字为汉字 性别:只能输入男或女 出生日期:可填可不填, 如果填写, 为合法日期 类型:下拉选择,选项有为大专、本科、硕研、博研。 运动爱好:值为跑步、球类、游泳、登山4 个选项选择,可以多选。 编程爱好:值为 C 语言、C++、C#、Java 4 个选项(只能选一个且必选一个)。

java-GUI-性别选择按钮

最终成果图: 一开始性别选择使用的是文本框输入,但是不符合我们平时的使用习惯,便进行了改进。 单选按钮代码如下: ButtonGroup sex=new ButtonGroup(); JRadioButton male=new JRadioButton("男"); JRadioButton female=new JRadioButton("女"); 但是我之前写的面板单独在一个类,继承了JPanel,add函数不能直接添加sexGroup。如果分别添加male和female会串行。(如下图所示:

m0_46445478的博客 6744

java 员工管理系统 gui

java 员工管理系统 gui java 员工管理系统 gui java 员工管理系统 gui java 员工管理系统 gui java 员工管理系统 gui java 员工管理系统 gui java 员工管理系统 gui java 员工管理系统 gui java 员工管理系统 gui

java gui swing 实现注册界面 要求:户输入账号、密码、确认密码、性别、生日、兴趣、备注。其中带*为必填项。单击“注册”按钮,判断必填项是否填完整,两次密码是否输入一致。

实现用户注册界面 设计实现用户注册界面,每组将实验报告提交至学习通,要求实验报告中包含功能展示与源代码。 要求:用户输入账号、密码、确认密码、性别、生日、兴趣、备注。其中带*为必填项。单击“注册”按钮,判断必填项是否填完整,两次密码是否输入一致。若注册信息有误,在左下角提示错误原因(选做);若注册信息完整、正确,提示注册成功,将用户输入的信息打印到屏幕。按重置按钮将所有输入内容清空(必做)。 效果图 自认为很丑,但是功能认为还挺全 以下为代码实现,本人做出来的界面很丑,功能实现就可以。 代码内有注释。 i

Avadakur的博客 1万+

学生管理系统(GUI)附带数据库

基于JavaGUI,MVC模式开发的学生管理系统,附带数据库SQL语句。

abaqus应力值导出并进行后处理(同一节点多个应力值如何处理?)

Abaqus应力导出: ‘Tools’--- Probe values 在Probe Values里面可以选择需要导出的信息,比如‘Nodes’或者‘Elements’ 如果需要导出多个应力值或者其他信息可以选择‘Components’这个选项。 选择‘Selected’只输出一个正应力S33(对应截图中的) 如果是‘All Direct’,则是输出6个正应力S11, S22, S33, S12, S13, S23 ‘All Principals’输出三个正应力 在输出...

themingyi的博客 5万+

Java任务--GUI(兴趣,性别)

编写一个JFrame窗口,要求如下: 1. 在窗口的NORTH区放置一个JPanel面板。 2. JPanel面板放置如下组件: (1) JLable标签,标签文本为“兴趣”,右边接着是三个JCheckBox多选按钮,选项分别是“羽毛球”、“乒乓球”、“唱歌”。可以多选。 (2) JLabel标签,标签文本为“性别”,右边接着是两个JRadioButton按钮,选项分别是“男”、“女”。置

zhuo_android的博客 2163

三维旋转详细解读(Rodrigues‘ Roatation Formula 罗德里格旋转公式)

三维旋转引言三维旋转1)欧拉角2)轴角式旋转分解1)V||的旋转2)V⊥的旋转3)V的整体旋转 引言 前面我们了解了 复数在二维旋转中的作用与联系 而四元数与三维旋转之间的关系与复数对二维旋转有很多类似的地方,下面我们就先来详细了解一下三维旋转的过程。 三维旋转 首先讨论一下三维旋转,我们了解到常用的三维旋转有两种方式: 1)欧拉角 即按照一定的顺序,分别对X, Y, Z三个轴进行旋转 θ 角。绕各旋转轴的旋转矩阵为: 然后任意的三维旋转可以分解成上述三种旋转方式的组合。(注意:三个旋转的顺序是非常重要的

晓晨的博客 1万+

java GUI 性别单选框 日期选择框

/***************/ /* 性别单选框 */ sex = new JLabel("性 别"); sex.setBounds(20, 105, 105, 30); man = new JRadioButton("男"); man.setSelected(true); woman = new JRadioButton("女"); man.setBou...

Kuguotao的博客 2503

TI AWR1642实战指南:CCS调试mmWave Demo Visualizer全流程解析

本文详细解析了TI AWR1642开发板的CCS调试流程,重点介绍了mmWave Demo Visualizer的使用方法。从环境准备、版本确认到bin文件烧录、CCS工程配置,再到调试启动与结果验证,提供了全流程的实战指南,帮助开发者快速掌握AWR1642的调试技巧,避免常见错误。

weixin_30790841的博客 110

12V INPUT电源电路设计中的关键保护机制解析【精简】

本文深入解析了12V INPUT电源电路设计中不可或缺的关键保护机制。针对常见的电源反接、过压及浪涌等风险,文章详细拆解了PMOS防反接、TVS过压钳位、OVP芯片关断以及快速断电电路等核心防护方案的设计原理、选型要点与实战优化技巧,旨在帮助工程师构建可靠、经济的电源前端防御体系。

weixin_29158047的博客 228

【微电网优化】基于粒子群求解CHP机组、气网、电网、储热罐和电锅炉微电网优化模型附matlab代码

1 简介 我国风力发电近年发展迅速,装机容量已成为全球首位.随着风力发电在电力系统中的渗透率不断提高,我国多个地区(尤其是"三北"地区)已经面临着十分严峻的风电消纳问题,产生不容忽视的弃风问题.针对目前我国风电消纳存在的困难,本文提出粒子群优化CHP机组、气网、电网、储热罐和电锅炉微电网控制策略. 2 部分代码 Ppv=[0;0;0;0;0;0;9.86000000000000;19.0100000000000;33.1000000000000;45.0700000000000;64.7900000

qq_59747472的博客 671

Java 统计个人信息的GUI设计

选修课作业: 注意swing各组件的重置、链接等代码,尤其是单选多选组合框等的使用方法。 源代码如下: package hobby; import java.io.BufferedWriter; import java.io.FileWriter; import java.io.IOException; import java.util.ArrayList; public class...

twentyonepilots的博客 1656

飞塔CVE-2022-40684复现

admin 无密码直接回车(会提示修改密码)

G3et的博客 1144

Android 64位支持的坑:诡异的文件名问题

最近在尝试发布我的Android应用程序的更新时,遇到了一个令人困惑的64位错误。本文将详细讲解这个问题的产生原因及解决方法,供大家参考。

m0_74337424的博客 122

【MySQL】数据类型

如果我们向mysql特定的类型中插入不合法的数据,MySql一般都是直接拦截我们,不让我们做对应的操作,反过来,如果我们已经有数据被成功插入到mysql中了,一定插入的时候是合法的,所以,mysql中,一般而言,数据类型本身也是一种约束,倒逼程序员,程序员尽可能进行正确的插入。插入中国,一共插入了6个字节的数据,说明当前char类型中,单位为字符,mysql中的字符和我们以前认识的C语言和C++字符是不一样的,,以前是一个字符是一个字节,而mysql中一个汉字或字母就是一个字符。如果M被忽略,默认为1。

Hush_H的博客 1285

【100%通过率】华为OD机试真题 Java&Go 实现【查找单入口空闲区域】【2022.11 Q4 新题】

给定一个 m xn 的矩阵,由若干字符 和0构成,X表示该处已被占据,0"表示该处空闲,请找到最大的单入口空闲区域.解释:空闲区域是由连通的O组成的区域,位于边界的0可以构成入口,单入口空闲区域即有目只有一个位于边界的0作为入口的由连通的'O"组成的区域。 如果两个元素在水平或垂直方向相邻,则称它们是“连通”的。

MISAYAONE的博客 2万+

字符串

字符串 开发工具与关键技术: 作者:赵纯雨 班级:1804 撰写时间:2019.5.6 字符串属性:length字符串它也有长度,空格也是长度。 string字符串对象,我们在之前的学习中当中就已经学习使用字符串对象了,以及定义字符串的办法就是直接赋值,比如:var mystr = “I love Javascript!”,定义mystr字符串后,我们就可以访问它的属性和方法,空格...

weixin_44540773的博客 689

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

sql表性别字段

create table tb_Test ( char sex check sex in('男',‘女’)//设置性别只能为男,女 ) 字段取值为0,1 将字段定义为BIT数据类型,如 create table 你的表名 ( 字段1 varchar(20), 字段2 bit ) create table 学生表(学号 char(5) not null primary key,姓名 

u013908405的专栏 3万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

python123 题目(辨别性别)

判别性别 描述 从键盘上输入某个人身份证信息,判断此人的性别,如果该人是男性,程序给出提示信息“该身份号码持有者是男性”,如果该人是女性,程序给出提示信息“该身份号码持有者是女性” ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ 判别方法:用身份证号码的...

KILLCPU123的博客 1万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

python性别选择男女代码,python性别输入if男或女

大家好,小编来为大家解答以下问题,python性别年龄分布图怎么做的,python性别选择男女代码,现在让我们一起来看看吧!要求:获取你的姓名并打印输出,将性别和年龄用不同的格式输出方法打印。

a17348的博客 1899

Java--正则表达式及应用

首次尝试用java编写图形界面;还有很多不熟悉的地方; 希望理解透这第一份; import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; /** * Created by yehao on 15-3-6. */ p

潜水的程序猿 480

matches()方法的使用规则

自学java以来,个人觉得正则表达式非常方便、使用,前一段时间发现许多类中都有matches方法,查阅资料后得到了非常详细的了解,给大家分享一下;也希望各位java高手 多多指点,新手多多交流学习经验,谢谢。。。   在java中Pattern类、Matcher类和String类中都有matches方法,它们的不同之处:(假设需要验证的字符串是abc,正则表达式是[a-z]{3}))

hywenbinger的专栏 5336
上一篇: 数组集合
下一篇: 完成购物车 单击购买按钮,购买选中商品。在购物信息窗体中,显示购物详情。购物时,判断商品在购物车中是否存在,如果不存在,在表格中新加商品,如果存在,则购买数量加一。在窗体中需要显示购物车商品总价
xiaozhang___
博客等级 码龄9年 6粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值