这个是表现层的主界面。

/*
* ListPanel.java
*
*/ package cn.hncu.addr.ui; import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane; import cn.hncu.addr.business.AddrBusiness; /**
*
* @author __chx__
*/
public class ListPanel extends javax.swing.JPanel {
/** Creates new form ListPanel */
private JFrame mainFrame = null;
private JLabel jlbFindAddress = new javax.swing.JLabel(); public ListPanel(JFrame mainFrame) {
this.mainFrame = mainFrame;
initComponents();
myInitData();
} public ListPanel(JFrame mainFrame, Object[] objs) {
this.mainFrame = mainFrame;
initComponents();
jListAddress.setListData(objs); jlbFindAddress
.setText("\u67e5\u627e\u5230\u7684\u5730\u5740\u4fe1\u606f\uff1a");
add(jlbFindAddress);
jlbFindAddress.setBounds(40, 50, 125, 17);
} private void myInitData() {
AddrBusiness set = new AddrBusiness();
Object obj[] = set.getAll();
jListAddress.setListData(obj);
} /**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
private JList<String> getListAddress() {
return jListAddress;
} private void initComponents() {
jLabelApp = new javax.swing.JLabel();
jbtnAdd = new javax.swing.JButton();
jbtnChange = new javax.swing.JButton();
jbtnDelete = new javax.swing.JButton();
jbtnFind = new javax.swing.JButton();
jScrollPane1 = new javax.swing.JScrollPane();
jListAddress = new javax.swing.JList();
jLabel1 = new javax.swing.JLabel();
jToggleButton1 = new javax.swing.JToggleButton(); setPreferredSize(new java.awt.Dimension(800, 600));
setLayout(null); jLabelApp.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 36));
jLabelApp.setForeground(new java.awt.Color(255, 0, 0));
jLabelApp.setText(" \u5730\u5740\u4fe1\u606fApp");
add(jLabelApp);
jLabelApp.setBounds(240, 20, 263, 47); jbtnAdd.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 14));
jbtnAdd.setForeground(new java.awt.Color(102, 102, 255));
jbtnAdd.setText("\u6dfb\u52a0\u5730\u5740");
jbtnAdd.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jbtnAddActionPerformed(evt);
}
});
add(jbtnAdd);
jbtnAdd.setBounds(120, 360, 120, 60); jbtnChange.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 14));
jbtnChange.setForeground(new java.awt.Color(102, 102, 255));
jbtnChange.setText("\u4fee\u6539\u5730\u5740");
jbtnChange.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jbtnChangeActionPerformed(evt);
}
});
add(jbtnChange);
jbtnChange.setBounds(120, 460, 120, 60); jbtnDelete.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 14));
jbtnDelete.setForeground(new java.awt.Color(102, 102, 255));
jbtnDelete.setText("\u5220\u9664\u5730\u5740");
jbtnDelete.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jbtnDeleteActionPerformed(evt);
}
});
add(jbtnDelete);
jbtnDelete.setBounds(470, 460, 120, 60); jbtnFind.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 14));
jbtnFind.setForeground(new java.awt.Color(102, 102, 255));
jbtnFind.setText("\u67e5\u627e\u5730\u5740");
jbtnFind.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jbtnFindActionPerformed(evt);
}
});
add(jbtnFind);
jbtnFind.setBounds(470, 360, 120, 60); jListAddress.setFont(new java.awt.Font("Microsoft YaHei UI", 1, 14));
jListAddress.setModel(new javax.swing.AbstractListModel() {
String[] strings = { "" }; public int getSize() {
return strings.length;
} public Object getElementAt(int i) {
return strings[i];
}
});
jScrollPane1.setViewportView(jListAddress); add(jScrollPane1);
jScrollPane1.setBounds(40, 70, 700, 270); jLabel1.setText(" \u9648\u6d69\u7fd4");
add(jLabel1);
jLabel1.setBounds(700, 510, 60, 17); jToggleButton1.setText("\u9000\u51fa");
jToggleButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jToggleButton1ActionPerformed(evt);
}
});
add(jToggleButton1);
jToggleButton1.setBounds(680, 410, 80, 50);
} private void jToggleButton1ActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0);
} private void jbtnFindActionPerformed(java.awt.event.ActionEvent evt) {
mainFrame.setContentPane(new QueryPanel(mainFrame));
mainFrame.validate();
} private void jbtnDeleteActionPerformed(java.awt.event.ActionEvent evt) {
if (jListAddress.getSelectedValue() == null) {
JOptionPane.showMessageDialog(this, "未选中地址!无法删除,请重新选择!");
} else {
mainFrame.setContentPane(new DeletePanel(mainFrame,
(String) jListAddress.getSelectedValue()));
mainFrame.validate();
}
} private void jbtnChangeActionPerformed(java.awt.event.ActionEvent evt) {
if (jListAddress.getSelectedValue() == null) {
JOptionPane.showMessageDialog(this, "未选中地址!无法修改,请重新选择!");
} else {
mainFrame.setContentPane(new UpdatePanel(mainFrame,
(String) jListAddress.getSelectedValue()));
mainFrame.validate();
}
} private void jbtnAddActionPerformed(java.awt.event.ActionEvent evt) {
// System.out.println("aaa");
mainFrame.setContentPane(new AddPanel(mainFrame));
mainFrame.revalidate();
} private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabelApp;
private javax.swing.JList jListAddress;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JToggleButton jToggleButton1;
private javax.swing.JButton jbtnAdd;
private javax.swing.JButton jbtnChange;
private javax.swing.JButton jbtnDelete;
private javax.swing.JButton jbtnFind; }

【2】JAVA---地址App小软件(ListPanel.class)(表现层)的更多相关文章

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

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

  2. 【1】JAVA---地址App小软件(AddressApp.class)(初步接触项目开发的分层思想)(表现层)

    这个是表现层的main方法. 实现的地址信息有: 姓名,性别,年龄,电话,地址. 实现的功能有: 增加地址: 删除地址: 修改地址: 查找地址:其中年龄的查找为年龄段的查找. 数据存储的方式为文件存储 ...

  3. 【6】JAVA---地址App小软件(QueryPanel.class)(表现层)

    查找模块: 年龄可进行段查找. 其他的都是模糊匹配. 空格为无用字符,会屏蔽的(除年龄). (如果在年龄中输入空格,会出现异常,当时没想到这点,要防护这点很容易的,但因为在这个小软件的编写过程,我主要 ...

  4. 【5】JAVA---地址App小软件(DeletePanel.class)(表现层)

    删除地址的表现层类. 如果没有选中要删除的地址信息,会出现窗口提示: 删除地址界面:(无法修改数据,只能看) /* * DeletePanel.java * */ package cn.hncu.ad ...

  5. 【4】JAVA---地址App小软件(UpdatePanel.class)(表现层)

    修改地址信息的一个表现层类. 必须选中地址,才能修改,否则会弹出窗口提示, 修改地址界面: /* * UpdatePanel.java * */ package cn.hncu.addr.ui; im ...

  6. 【3】JAVA---地址App小软件(AddPanel.class)(表现层)

    添加地址信息界面. 年龄和地址必须是数字,否则会弹出窗口提示. 地址信息不能为空. /* * AddPanel.java * * Created on __DATE__, __TIME__ */ pa ...

  7. 【8】JAVA---地址App小软件(AddrDaoFile .class)(数据层)

    实现数据进行文件的存储和读写. 本软件也就到此结束了. 没多少可以讲的. 因为这个小软件也就8个类,主要学习的也就是一个分层思想的简单应用. package cn.hncu.addr.dao; imp ...

  8. 【7】JAVA---地址App小软件(AddrBusiness.class)(逻辑层)

    这个...没多少好解释的... 表现层的增删改查的具体实现类. package cn.hncu.addr.business; import javax.swing.JOptionPane; impor ...

  9. Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解

    Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解 说明:Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解,加密算法,是现在每个软件项目里必须用到的内容. 广泛应用在包括 ...

随机推荐

  1. Oracle V$SQLAREA

    V$SQLAREA 记录shared SQL area中语句统计信息: V$SQLAREA持续跟踪所有shared pool中的共享cursor,在shared pool中的每一条SQL语句都对应一列 ...

  2. Java 7之多线程- Semaphore--转载

    Semaphore用于保存当前可用许可的数量.是通过共享锁实现的.根据共享锁的获取原则,Semaphore分为"公平信号量"和"非公平信号量". "公 ...

  3. 八皇后问题 lua版

    简单来讲就是如何在一个8x8的棋盘中放八个棋,让他们两两不能在同一行,同一列,同一斜线. 直接贴代码(出至:programming in lua 3 ) --棋盘大小 SIZE = --判断棋放在ro ...

  4. Android -- 官方下拉刷新SwipeRefreshLayout

    V4的兼容包 API 大概就这4个常用的方法. code 布局 <RelativeLayout xmlns:android="http://schemas.android.com/ap ...

  5. python之路,Day24 常用设计模式学习

    python之路,Day24 常用设计模式学习   本节内容 设计模式介绍 设计模式分类 设计模式6大原则 1.设计模式介绍 设计模式(Design Patterns) --可复用面向对象软件的基础 ...

  6. access的时间相关的查询

    string sql = "select * from CONCURRENCY WHERE CONCURRENCY.DATE_FLAG BETWEEN  cdate('2013-11-1', ...

  7. Data Types

    原地址: Home / Database / Oracle Database Online Documentation 11g Release 2 (11.2) / Database Administ ...

  8. 重新开始学习javase_集合_Map

    一,Map之HashMap(转:http://blog.csdn.net/zheng0518/article/details/42197049) 1.    HashMap概述: HashMap是基于 ...

  9. java学习——IO流

    字符流的由来:其实就是:字节流读取文字字节数据后,不直接操作而是先查指定的编码表.获取对应的文字.在对这个文字进行操作.简单说:字节流+编码表 ---------------------------- ...

  10. uvalive3026 Period (KMP+结论)

    题目链接:http://vjudge.net/problem/viewProblem.action?id=29342 题目大意:给定字符串,找到每个前缀的最大循环节的个数. 首先当然是kmp预处理,接 ...