【2】JAVA---地址App小软件(ListPanel.class)(表现层)

简介: 这个是表现层的主界面。 /* * ListPanel.java * */package cn.hncu.addr.ui;import javax.swing.

这个是表现层的主界面。

/*
 * 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;

}
目录
相关文章
|
7天前
|
Java Linux 开发者
软件体系结构 - Java垃圾收集器
【4月更文挑战第22天】软件体系结构 - Java垃圾收集器
20 4
|
2月前
|
Java 开发者 微服务
Java企业应用软件系统架构演变史
Java企业应用软件系统架构演变史
31 0
|
8月前
|
分布式计算 Java 开发者
GitHub爆款!Java性能优化:轻松道破软件性能调优,不止搞定JVM
今天给大家带来的是:周明耀老师的 《大话Java性能优化:轻松道破软件性能调优方法论和具体实现路径》,全面细致,一本书搞定性能优化 周明耀是谁? 12年投资银行项目、分布式计算项目工作经验,IBM开发者论坛专家作者。一名IT技术狂热爱好者,一名顽强到底的工程师。推崇技术创新、思维创新,对于新技术非常的热爱,致力于技术研发、研究,通过发布文章、书籍、互动活动的形式积极推广软件技术。欢迎添加作者“michael_tec”,共同探讨IT技术话题。
|
7月前
|
算法 Java 测试技术
【备战蓝桥杯 | 软件Java大学B组】十三届真题深刨详解(2)
【备战蓝桥杯 | 软件Java大学B组】十三届真题深刨详解(2)
39 0
|
7月前
|
前端开发 JavaScript Java
Java中规模软件开发实训——掌握财务自由的关键!解锁智能家庭记账系统的神奇力量!(家庭记账软件)
​ ✨博主:命运之光 🌸专栏:Python星辰秘典 🐳专栏:web开发(html css js) ❤️专栏:Java经典程序设计 ☀️博主的其他文章:点击进入博主的主页
80 0
|
13天前
|
JavaScript Java 测试技术
基于Java的库存管理软件的设计与实现(源码+lw+部署文档+讲解等)
基于Java的库存管理软件的设计与实现(源码+lw+部署文档+讲解等)
25 1
|
18天前
|
Java 测试技术
[软件自动化测试] selenium java环境配置
介绍了包括选择Gradle构建,关闭Gradle Wrapper的默认下载,修改`gradle-wrapper.properties`以使用腾讯云镜像,以及更新`build.gradle`文件添加国内仓库和Selenium依赖。在测试驱动部分,创建了一个简单的JUnit测试用例,展示了如何初始化Edge浏览器并访问网站。运行测试时可能出现关于CDP版本不匹配的警告,可以通过升级Selenium依赖中的CDP版本来解决。推荐根据[Selenium库网页](https://search.maven.org/search?q=g:org.seleniumhq.selenium)提供的版本信息进行升级
334 6
|
7月前
|
存储 人工智能 Java
【备战蓝桥杯 | 软件Java大学B组】十三届真题深刨详解(1)
【备战蓝桥杯 | 软件Java大学B组】十三届真题深刨详解(1)
375 0
|
4月前
|
Java
Java_画图软件
Java_画图软件
19 0
|
9月前
|
Java 关系型数据库 MySQL
CentOS需要安装的JAVA环境的相关软件
【JDK 1.7】 https://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html#jdk-7u80-oth-JPR 选择 Java SE Development Kit 7u80 下面的 Accept License Agreement 然后点击 jdk-7u80-linux-x64.tar.gz 下载 【Tomcat 7】 http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0