java 24 - 10 GUI 之 四则预算的数据校验
我想要在校验的过程中,如果输入到操作数中的不是数字,则弹出提醒框:
类 JOptionPane 有助于方便地弹出要求用户提供值或向其发出通知的标准对话框
方法名 | 描述 |
---|---|
showConfirmDialog | 询问一个确认问题,如 yes/no/cancel。 |
showInputDialog | 提示要求某些输入。 |
showMessageDialog | 告知用户某事已发生。 |
showOptionDialog | 上述三项的大统一 (Grand Unification)。 |
在设置窗体类添加代码:
private void countActionPerformed(java.awt.event.ActionEvent evt) {
//这里是计算按钮的监听事件
//获取第一个操作数
String FirstNumberString = this.FirstNumber.getText().trim(); //获取第二个操作数
String SecondNumberString = this.SecondNumber.getText().trim(); //对输入的第一个操作数进行校验
//用正则表达式来判断,输入的是否是数字
String s = "\\d+";
//matches 比较正则表达式
if(!(FirstNumberString.matches(s))){
//如果不是数字,则弹出提醒框
//JOptionPane类:有助于方便地弹出要求用户提供值或向其发出通知的标准对话框
//showMessageDialog 告知用户某事已发生。
JOptionPane.showMessageDialog(rootPane, "第一个操作数不符合条件,必须是整数");
//弹出提示框后,把输入的字符给清空
this.FirstNumber.setText("");
//给光标
this.FirstNumber.requestFocus();
//然后让程序回去,不能继续走下去
return ;
}
//对输入的第二个操作数进行校验
if(!(SecondNumberString.matches(s))){
JOptionPane.showMessageDialog(rootPane, "第二个操作数不符合条件,必须是整数");
this.SecondNumber.setText("");
this.SecondNumber.requestFocus();
return;
} //转换成整数类
int FirstNumber = Integer.valueOf(FirstNumberString);
int SecondNumber = Integer.valueOf(FirstNumberString); //获取运算符 getSelectedItem():所选的项目
String operator = this.operator.getSelectedItem().toString(); //设置个结果变量
int result = 0;
//根据运算符的不同来进行不同的操作
switch(operator){
case "+":
result = FirstNumber + SecondNumber;
break;
case "-":
result = FirstNumber - SecondNumber;
break;
case "*":
result = FirstNumber * SecondNumber;
break;
case "/":
result = FirstNumber / SecondNumber;
break;
}
//把得到的结果赋值到结果文本框
this.Result.setText(String.valueOf(result));
}
java 24 - 10 GUI 之 四则预算的数据校验的更多相关文章
- java 24 - 8 GUI之创建四则运算计算器(未校验版)
这个是用NetBeans软件制作的,因为这个软件制作GUI任务比较方便 通过拖拽控件生成的窗体:(红色的名称是更改后的控件名称) 拉拽好布局后,要进行的步骤: A:更改想要进行操作的控件的名称(右键控 ...
- java 24 - 1 GUI之GUI的概述和基本代码
GUI(图形用户界面) GUI和CLI的区别: GUI Graphical User Interface(图形用户接口). 用图形的方式,来显示计算机操作的界面,这样更方便更直观. CLI Comma ...
- java 24 - 9 GUI 之 给窗体换图标、设置启动在屏幕中间、更换皮肤
A.首先更改窗体左上角的图片 步骤一: 创建3个包,分别建立1个类 第一个是窗体的包,窗体类:设置窗体的主要布置和功能 第二个是资源包,图片:把想要改的图案拉进来 第三个是UI界面包,UI界面设计类: ...
- java 24 - 7 GUI之 创建多级菜单窗体
需求: 创建多级菜单 步骤: A:创建窗体对象(并设置属性和布局) B:创建菜单栏 C:创建菜单和子菜单 D:逐步添加菜单(子菜单添加到菜单中,菜单添加到菜单栏中) E:窗体中设置菜单栏(菜单栏并不是 ...
- java 24 - 3 GUI之添加按钮
需求:把按钮添加到窗体,并对按钮添加一个点击事件. A:创建窗体对象 B:创建按钮对象 C:把按钮添加到窗体 D:窗体显示 注意:这里对按钮添加点击事件,同样使用监听器. 但是,这里的按钮是组件,所以 ...
- java 24 - 11 GUI之制作登陆注册页面
简单说说,懒得发了... 步骤: A:首先写出登陆注册需要用到类以及代码(IO流) B:然后创建登陆窗口和注册窗口 C:各个监听事件: a:登录窗口 1.重置:把2个文本框的内容全部清空 2.注册:关 ...
- java 24 - 6 GUI之 创建只能输入数字的文本框
需求: 创建一个含有标签和文本框的窗体,其中文本框只能输入数字 步骤:(大致上) 创建窗体对象 创建标签对象 创建文本框对象 把组件添加到窗体中 设置标签的监听事件,对键盘按下的数据进行监听 设置窗体 ...
- java 24 - 5 GUI之 鼠标移动改变窗体背景颜色
需求: 创建一个可改变背景颜色的窗口,鼠标移动到按钮上,窗口背景就会改变成特定的颜色 步骤: (大致上) 创建窗口对象 创建按钮对象 添加按钮到窗口中 设置窗口关闭监听事件 设置鼠标进入按钮区域的监听 ...
- java 24 - 4 GUI之创建数据转移窗口
需求: 把文本框中的数据,通过点击按钮,转移到文本域中. 同时清空文本框中的数据 代码:(步骤都注释了) public class FrameDemo4 { public static void m ...
随机推荐
- 通过GP加载卫星云图-雷达图-降雨预报图
# ---------------------------------------------------------------------------# MeteorologicalImageLo ...
- SharePoint Server 2016 IT Preview 先睹为快
1.首先下载SharePoint Server 2016 IT Preview安装包,大约2.8GB,当然如果有需要,还可以下载两种提供测试的语言包,其他语言包还未提供下载,如下图: 2.我是在已经安 ...
- wydomain
目标系统信息收集组件,完全模块化,脚本均可拆可并.可合可分的使用! 运行流程 利用FOFA插件获取兄弟域名,并透视获取到的子域名相关二级域名.IP信息 检查域名和兄弟域名是否存在域传送漏洞,存在就遍历 ...
- SPS中JSOM和SOAP 实现文件上传
一.HTML控件 <input type="file" id="upFile" style="width:300px;"/> & ...
- gridView获得每行的值
前台代码: <asp:GridView ID="GridView1" runat="server" DataKeyNames="ID" ...
- 如何处理 android 方法总数超过 65536 . the number of method references in a .dex file exceed 64k
一:问题描述: 应用中的Dex 文件方法数超过了最大值65536的上限,简单来说,应用爆棚了. 二.解决方案: 方案1:使用插件化框架 比如: https://github.com ...
- mysql 数据库服务中的应用程序
mysql 是一个数据库服务,而实现数据库服务是由mysql中的很多子应用程序来完成的(http://dev.mysql.com/doc/refman/5.7/en/programs-overview ...
- mysql 命令行操作入门(详细讲解版)
之前分享过多次Mysql主题,今天继续分享mysql命令行入门 1. 那么多mysql客户端工具,为何要分享命令行操作? -快捷.简单.方便 -在没有客户端的情况下怎么办 -如果是mysql未开启 ...
- 好久没有写博客了,发现Live Writer也更新了
最近由于工作变动,工作内容和心态也有所变化,所以很久没有写博客了,而且我的开源项目深蓝词库转换也很近没有更新了.今天打开LiveWriter发现居然有新版本,于是果断更新.现在新的LiveWriter ...
- 我的ElasticSearch集群部署总结--大数据搜索引擎你不得不知
摘要:世上有三类书籍:1.介绍知识,2.阐述理论,3.工具书:世间也存在两类知识:1.技术,2.思想.以下是我在部署ElasticSearch集群时的经验总结,它们大体属于第一类知识“techknow ...