zoukankan      html  css  js  c++  java
  • 注册界面1.1版

    需求:

    1 设计两个界面
     a.注册界面 使用户可以输入   员工ID,姓名,性别,年龄,个人简介 等信息 点击注册按钮 打开第二个界面
      提示:1 按钮单击事件,参照昨天的 对话框 里面的 单击事件来做
            2 打开第二个界面 可以通过 实例化(new) 第二个界面的类
            3 数据使用二维数组存放
            4 第二个界面的构造方法 带一个二维数组的参数 用于 接受第一个界面 的 二维数组。
     b.显示界面,使用JTable显示 最新的全部员工信息
            使用构造方法 将二维数组 获取,然后 创建JTable并显示数据

    代码:

    1.注册界面

    package com.niit.homework;
    
    import java.awt.Color;
    import java.awt.FlowLayout;
    import java.awt.Graphics;
    import java.awt.Image;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    import javax.swing.Box;
    import javax.swing.ButtonGroup;
    import javax.swing.ImageIcon;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JRadioButton;
    import javax.swing.JTextArea;
    import javax.swing.JTextField;
    
    /**
     * @author: Annie
     * @date:2016年5月31日
     * @description:注册界面
     */
    public class Register extends JFrame{
    
        public static void main(String[] args) {
            new Register();
        }
    
        String [][] arr = new  String [100][5];
        JLabel id,name,age, gender,introduction;
        ButtonGroup bg;
        JRadioButton female,male;
        JTextArea textArea;
        JTextField tf_id,tf_name,tf_age,jf_introduction;
        JButton btn_register;
        MyPanel jp;
        Box box_id,box_name,box_age,box_gender,box_introduction,baseBox;
    
        public Register() {
    
            setVisible(true);
            setSize(400, 450);
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            instantiateFunction();
            addFunction();
            
    
        }
    
        public void instantiateFunction(){
            jp = new MyPanel(new ImageIcon("./src/picture/pic16.jpg").getImage());
            baseBox = Box.createVerticalBox();
            box_id = Box.createHorizontalBox();
            box_name = Box.createHorizontalBox();
            box_age = Box.createHorizontalBox();
            box_gender = Box.createHorizontalBox();
            box_introduction = Box.createHorizontalBox();
            btn_register = new JButton("注册");    
            tf_id = new JTextField(10);
            tf_name = new JTextField(10);
            tf_age = new JTextField(10);
            bg = new ButtonGroup();
            female = new JRadioButton("女");
            male = new JRadioButton("男");
            textArea = new JTextArea(9,20);
            listenerFunction();
    
        }
    
        /**
         * 实现页面跳转和数组传递
         * */
    
        public void listenerFunction(){
            btn_register.addActionListener(new ActionListener() {
    
                @Override
                public void actionPerformed(ActionEvent e) {
                    
                    for (int i = 0; i < arr.length; i++) {
                        //先做一个判断,如果ID不为空,则传过去
                        if(arr[i][0]==null || arr[i][0].equals("")){
                            arr[i][0] =tf_id.getText();
                            arr[i][1] =tf_name.getText();
                            arr[i][2] =tf_age.getText();
                            
                            if(male.isSelected()){
                                arr[i][3] = male.getText();
                            }else{
                                arr[i][3] = female.getText();
                            }
                            arr[i][4] =textArea.getText();
                            
                            break;
                        }
                    }
                    new JTabelMsg(arr);
    
                }
            });
        }
    
        public void addFunction(){
            add(jp);
            box_id.add(new JLabel("ID:       "));
            box_id.add(tf_id);
    
            box_name.add(new JLabel("姓名:  "));
            box_name.add(tf_name);
    
            box_age.add(new JLabel("年龄:  "));
            box_age.add(tf_age);
            
            box_gender.add(new JLabel("性别:  "));
            bg.add(male);
            bg.add(male);
            box_gender.add(male);
            box_gender.add(female);    
             
            box_introduction.add(textArea);
    
    
            baseBox.add(Box.createVerticalStrut(15));
            baseBox.add(box_id);
            baseBox.add(Box.createVerticalStrut(15));
            baseBox.add(box_name);
            baseBox.add(Box.createVerticalStrut(15));
            baseBox.add(box_age);
            baseBox.add(Box.createVerticalStrut(15));
            baseBox.add(box_gender);
            baseBox.add(Box.createVerticalStrut(15));
            baseBox.add(new JLabel("个人简介:  "));
            baseBox.add(box_introduction);
            baseBox.add(Box.createVerticalStrut(15));
            baseBox.add(btn_register);
            jp.add(baseBox);
            
        }
    }
    
    class MyPanel extends JPanel{
        Image img;
        public MyPanel(Image img) {
            this.img = img;
        }
        @Override
        protected void paintComponent(Graphics g) {
            super.paintComponent(g);
            g.drawImage(img,0,0, this.getWidth(), this.getHeight(), this);
        }
    }

    2.显示学生信息界面:

    /**
     * 
     */
    package com.niit.homework;
    
    import java.util.Vector;
    
    import javax.swing.ImageIcon;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import javax.swing.table.DefaultTableModel;
    
    
    /**
     * @author: Annie
     * @date:2016年5月31日
     * @description:存放学生信息界面
     */
    public class JTabelMsg extends JFrame {
    
        
        JTable table;
        JPanel jp;
        //MyDate model;
        JTable tabel;
        ImageIcon img1,img2,img3;
        
        public JTabelMsg(String [][] arr) {
            System.out.println("跳过来了");
            setVisible(true);
            setSize(500, 500);
            setTitle("保存信息界面");
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            init(arr);
    
        }
    
        
        private void init(String [][] arr) {
            //标题数组
                    String [] columns = {"ID","姓名","年龄","性别","个人简介"};
    
                    //项目的相对路径./代表项目名称
                    /*img1 = new  ImageIcon("./src/picture/dm.png");
                    img2 = new  ImageIcon("./src/picture/pic12.jpg");
                    img3 = new  ImageIcon("./src/picture/pic2.jpg");*/
                    //model = new MyDate(arr,columns);
                    jp = new JPanel();
                    table = new JTable(arr,columns);//没有图片时的实例化
                    //table = new JTable(model);//存在图片时的实例化
                    table.setRowHeight(20);
    
                    JScrollPane scrollPanel = new JScrollPane(table);
                    jp.add(scrollPanel);
                    add(jp);
            
        }
    
    }
    
    /*//显示一张图片
    class MyDate extends DefaultTableModel{
    
        
        public MyDate(Object [][]data,Object[]names) {
            super(data,names);
        }
        @Override
        public Class<?> getColumnClass(int col) {
            Vector<?> v = (Vector<?>) dataVector.elementAt(0);
            return v.elementAt(col).getClass();
        }
    
    }*/

    3.程序入口的类:

    package com.niit.homework;
    
    /**
     * @author: Annie
     * @date:2016年5月31日
     * @description:程序入口界面
     */
    public class TestMsg {
    
        
        public static void main(String[] args) {
            Register  register = new Register();
    
        }
    
    }
  • 相关阅读:
    IOS 作业项目(1) 关灯游戏 (百行代码搞定)
    Object-C 基础笔记5---Category
    Object -c基础知识(5)--release 之后 retainCount为何为1
    Foundation--NSString , array and Dictionary
    Foundation--结构体
    Object-C 基础笔记4---ARC内存管理
    141. Linked List Cycle
    139. Word Break
    138. Copy List with Random Pointer
    133. Clone Graph
  • 原文地址:https://www.cnblogs.com/wangmingxia/p/5549225.html
Copyright © 2011-2022 走看看