查找模块:
年龄可进行段查找。
其他的都是模糊匹配。
空格为无用字符,会屏蔽的(除年龄)。
(如果在年龄中输入空格,会出现异常,当时没想到这点,要防护这点很容易的,但因为在这个小软件的编写过程,我主要学的是java项目开发的分层思想,软件可能bug比较多,望见谅。)

/** QueryPanel.java**/package cn.hncu.addr.ui;import javax.swing.JFrame;
import javax.swing.JOptionPane;import cn.hncu.addr.business.AddrBusiness;/**** @author  __chx__*/
public class QueryPanel extends javax.swing.JPanel {private JFrame mainFrame = null;String[] strsQu = null;public QueryPanel(JFrame mainFrame) {this.mainFrame = mainFrame;initComponents();myInitComponents();}private void myInitComponents() {strsQu = new String[6];jtfAge1.setText("0");jtfAge.setText("999");}private void initComponents() {jLabel2 = new javax.swing.JLabel();jlbName1 = new javax.swing.JLabel();jtfName = new javax.swing.JTextField();jtfxingbie = new javax.swing.JTextField();jlbxingbie = new javax.swing.JLabel();jlbAge = new javax.swing.JLabel();jtfAge = new javax.swing.JTextField();jtfDianhua = new javax.swing.JTextField();jlbDianhau = new javax.swing.JLabel();jlbAddress = new javax.swing.JLabel();jtfAddress = new javax.swing.JTextField();jbtnFind = new javax.swing.JButton();jbtnreturn = new javax.swing.JButton();jtfAge1 = new javax.swing.JTextField();jLabel1 = new javax.swing.JLabel();setMinimumSize(new java.awt.Dimension(800, 600));setLayout(null);jLabel2.setFont(new java.awt.Font("Microsoft YaHei UI", 3, 48));jLabel2.setForeground(new java.awt.Color(255, 51, 0));jLabel2.setText("\u67e5\u627e\u5730\u5740\u4fe1\u606f");add(jLabel2);jLabel2.setBounds(230, 20, 330, 90);jlbName1.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 18));jlbName1.setText("\u59d3\u540d\uff1a");add(jlbName1);jlbName1.setBounds(140, 150, 60, 40);add(jtfName);jtfName.setBounds(200, 160, 130, 23);add(jtfxingbie);jtfxingbie.setBounds(200, 200, 190, 23);jlbxingbie.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 18));jlbxingbie.setText("\u6027\u522b\uff1a");add(jlbxingbie);jlbxingbie.setBounds(140, 190, 60, 40);jlbAge.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 18));jlbAge.setText("\u5e74\u9f84\u6bb5\uff1a");add(jlbAge);jlbAge.setBounds(120, 230, 80, 40);add(jtfAge);jtfAge.setBounds(340, 240, 70, 23);add(jtfDianhua);jtfDianhua.setBounds(200, 280, 330, 23);jlbDianhau.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 18));jlbDianhau.setText("\u7535\u8bdd\uff1a");add(jlbDianhau);jlbDianhau.setBounds(140, 270, 60, 40);jlbAddress.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 18));jlbAddress.setText("\u5730\u5740\uff1a");add(jlbAddress);jlbAddress.setBounds(140, 310, 60, 40);add(jtfAddress);jtfAddress.setBounds(200, 320, 410, 23);jbtnFind.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 24));jbtnFind.setForeground(new java.awt.Color(255, 0, 51));jbtnFind.setText("\u67e5\u627e");jbtnFind.addActionListener(new java.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jbtnFindActionPerformed(evt);}});add(jbtnFind);jbtnFind.setBounds(140, 430, 110, 70);jbtnreturn.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 24));jbtnreturn.setForeground(new java.awt.Color(0, 204, 204));jbtnreturn.setText("\u53d6\u6d88");jbtnreturn.addActionListener(new java.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent evt) {jbtnreturnActionPerformed(evt);}});add(jbtnreturn);jbtnreturn.setBounds(490, 430, 110, 70);add(jtfAge1);jtfAge1.setBounds(200, 240, 70, 23);jLabel1.setText("\u2014\u2014");add(jLabel1);jLabel1.setBounds(290, 240, 41, 17);}private void jbtnreturnActionPerformed(java.awt.event.ActionEvent evt) {mainFrame.setContentPane(new ListPanel(mainFrame));mainFrame.validate();}private void jbtnFindActionPerformed(java.awt.event.ActionEvent evt) {// 表现层代码的基本写法strsQu[0] = jtfName.getText();strsQu[1] = jtfxingbie.getText();strsQu[2] = jtfAge1.getText();strsQu[3] = jtfDianhua.getText();strsQu[4] = jtfAddress.getText();strsQu[5] = jtfAge.getText();// 3.调用逻辑层AddrBusiness set = new AddrBusiness();Object[] objs = set.query(strsQu);//      for(int i=0;i<objs.length;i++){//          System.out.println(objs[i]);
//      }// 4.根据逻辑层的返回结果,导向不同的结果界面mainFrame.setContentPane(new ListPanel(mainFrame,objs));mainFrame.revalidate();}private javax.swing.JLabel jLabel1;private javax.swing.JLabel jLabel2;private javax.swing.JButton jbtnFind;private javax.swing.JButton jbtnreturn;private javax.swing.JLabel jlbAddress;private javax.swing.JLabel jlbAge;private javax.swing.JLabel jlbDianhau;private javax.swing.JLabel jlbName1;private javax.swing.JLabel jlbxingbie;private javax.swing.JTextField jtfAddress;private javax.swing.JTextField jtfAge;private javax.swing.JTextField jtfAge1;private javax.swing.JTextField jtfDianhua;private javax.swing.JTextField jtfName;private javax.swing.JTextField jtfxingbie;}

转载于:https://www.cnblogs.com/webmen/p/5739342.html

【6】JAVA---地址App小软件(QueryPanel.class)(表现层)相关推荐

  1. Java---设计模式app小软件汇总应用

    写了一个app小软件,重点不在于软件,软件bug挺多,也没去修改. 这个小软件只是为了更好的说明和了解设计模块而做的. Java 程序设计–包结构 Java程序设计的系统体系结构很大一部分都体现在包结 ...

  2. Java家庭记账小软件

    通过以下这个小案例,来作为Java入门的第一课.虽然之前学过C#语言和C语言,但还是仔仔细细的敲了以下代码,并且都有详细的注释.相信这对有过其它编程语言基础的你并不难. 先来看下要实现的效果: 首先要 ...

  3. 地震射线追踪与有限差分正演模拟小软件

    翻看自己研究生时候用java写的小软件,功能还是很强大的 https://github.com/Rtoax/Seismic-Processing

  4. JAVA版聊天室小软件

    这是一篇关于JAVA的聊天室室小软件,用的swing的技术同时也用到了socket.今天发布出来,希望能帮到大家. 文章目录 开发环境 项目结构 下载地址: 一.运行画面展示 二.代码部分 1.客户端 ...

  5. Java社交商城APP+小程序多功能B2B2C商城源码

    Java社交商城APP+小程序多功能B2B2C商城源码 功能介绍 1)用户可通过邀请好友.签到赚取糖果: 2)用户可以通过平台获取想要的商品,领券购买并获取分佣提成: 3) 用户可以通过淘宝链接搜索商 ...

  6. 精品实用小软件汇总(附下载地址)

    在生活学习中发现许多非常实用的小软件,可以方便的解决我们遇到的一些问题,现分享于下:     1.FSCapture   (重要的是可以滚动截图,整张网页都可以截取下来)    FSCapture是一 ...

  7. Java后端开发必备软件下载地址汇总

    Java后端开发必备软件下载地址汇总 文章目录 Java后端开发必备软件下载地址汇总 先记录,用到再加,持续更新,欢迎补充. 华为云 jdk8 OpenJdk小版本 IDEA各版本 Tomcat各版本 ...

  8. java设计九宫格拼图软件哪个好用_九宫格拼图软件下载_抖音很火的九宫格拼图软件app下载_易玩网...

    最近抖音里面好多小伙伴都在晒自己的九宫格拼图照片,小编就为您寻找到了这款APP,软件名字就是分图,能够轻松实现九宫格拼图的制作,你可以随时选择九宫格或者二宫格.三宫格.四宫格以及六宫格,轻松一键制作你 ...

  9. Java——编写一个算术测试小软件

    问题描述: 编写一个算术测试小软件,用来训练小学生的算术能力.程序由3个类组成,其中Teacher类对象负责给出算术题目,并判断回答者的答案是否正确:ComputerFrame类对象提供的GUI界面看 ...

最新文章

  1. Hadoop日记Day7---HDFS的WED端口
  2. mysql 变量作用域_二十二、MySQL基础系列笔记之变量
  3. es6 数组找最大值_JavaScript 查找数组中最大值与最小值
  4. kinana 清空索引数据_(Elasticsearch)实战Elasticseartch、Logstash、Kibana
  5. 谈自由,ASP.NET Core才是未来?
  6. 111. 二叉树的最小深度 golang
  7. MySql为查询结果添加前、后缀
  8. exchange2010 DAG备份
  9. 盘片式过滤器是盘式过滤器吗?
  10. ssd网络详解之detection output layer
  11. 小米笔记本pro lol测试软件,小米笔记本Pro 15增强版游戏性能测评
  12. Oracle RAC集群增加新共享硬盘并使用AFD的式增加新ASM磁盘组
  13. 关于思科交换机产品型号的命名规则
  14. 如何利用COOC生成动态排名变化利器可识别的数据格式
  15. [JZOJ3385] [NOIP2013模拟] 黑魔法师之门 解题报告(并查集)
  16. EasyRTMP Android安卓手机直播推流摄像头偏暗的问题解决
  17. PHP生成微信小程序码
  18. JavaScript / Summary of Interview Questions
  19. 零编程无屏幕,这款电子拼图机器人降低了STEM教育的学习门槛
  20. 中文版Photoshop.CS6完全自学教程pdf

热门文章

  1. 设计模式之模版方法模式demo
  2. MySQL:union all与union区别详解
  3. 项目管理:项目管理为什么难?
  4. MAC电脑常用效率工具推荐
  5. Javascript对象及数组用法笔记
  6. 最实用前端开发框架对比评测
  7. 高斯模糊java代码_OpenCV3 Java图形图像上的高斯模糊(Imgproc.GaussianBlur)
  8. python递归迭代_Python入门基础知识点(python迭代器和递归)
  9. latex排版基础_排版基础分类
  10. 看了就会的 Node.js 三大基础模块常用 API