⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userlist.java

📁 机械工业出版社的《jsp2.0动态网站开发实例指南》的源代码
💻 JAVA
字号:
package ui;
import AccountsPack.User;
import AccountsPack.Operator;
import AccountsPack.Administrator;

import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.*;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableModel;
import javax.swing.table.DefaultTableModel;

import DataCenterPackage.Condition;
/*
 * Created on 2005-4-12
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */

/**
 * @author zinniazxp
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class UserList extends JPanel {
	private JLabel jLabel = null;
	private JPanel jPanel = null;
	private JPanel jPanel1 = null;
	private JButton jButton = null;
	private JButton jButton1 = null;
	private JTable jTable = null;
	private JScrollPane jScrollPane = null;
	private JButton jButton2 = null;
	private JButton jButton3 = null;

    private Handler _handler = new Handler();
    private User []_users;
    DefaultTableModel _dataModel;

	/**
	 * This method initializes jPanel	
	 * 	
	 * @return javax.swing.JPanel	
	 */    
	private JPanel getJPanel() {
		if (jPanel == null) {
			jPanel = new JPanel();
			jPanel.setPreferredSize(new java.awt.Dimension(600,90));
			jPanel.add(getJPanel1(), null);
			jPanel.add(getDeleteButton(), null);
			jPanel.add(getAddButton(), null);
			jPanel.add(getModifyButton(), null);
			jPanel.add(getUpdateButton(), null);

		}
		return jPanel;
	}

	/**
	 * This method initializes jPanel1	
	 * 	
	 * @return javax.swing.JPanel	
	 */    
	private JPanel getJPanel1() {
		if (jPanel1 == null) {
			jPanel1 = new JPanel();
			jPanel1.setPreferredSize(new java.awt.Dimension(590,40));
		}
		return jPanel1;
	}
	/**
	 * This method initializes jButton	
	 * 	
	 * @return javax.swing.JButton	
	 */    
	private JButton getDeleteButton() {
		if (jButton == null) {
			jButton = new JButton();
			jButton.setText("Delete");
			jButton.setPreferredSize(new java.awt.Dimension(80,28));
            jButton.addActionListener(_handler);
            jButton.setActionCommand("DELETE");
		}
		return jButton;
	}
	/**
	 * This method initializes jButton1	
	 * 	
	 * @return javax.swing.JButton	
	 */    
	private JButton getModifyButton() {
		if (jButton1 == null) {
			jButton1 = new JButton();
			jButton1.setText("Modify");
			jButton1.setPreferredSize(new java.awt.Dimension(80,28));
            jButton1.addActionListener(_handler);
            jButton1.setActionCommand("MODIFY");
		}
		return jButton1;
	}
    /**
	 * This method initializes jButton2
	 *
	 * @return javax.swing.JButton
	 */
	private JButton getAddButton() {
		if (jButton2 == null) {
			jButton2 = new JButton();
			jButton2.setText(" Add ");
			jButton2.setPreferredSize(new java.awt.Dimension(80,28));
            jButton2.addActionListener(_handler);
            jButton2.setActionCommand("ADD");
		}
		return jButton2;
	}

     /**
	 * This method initializes jButton2
	 *
	 * @return javax.swing.JButton
	 */
	private JButton getUpdateButton() {
		if (jButton3 == null) {
			jButton3 = new JButton();
			jButton3.setText("Update");
			jButton3.setPreferredSize(new java.awt.Dimension(80,28));
            jButton3.addActionListener(_handler);
            jButton3.setActionCommand("UPDATE");
		}
		return jButton3;
	}
	/**
	 * This method initializes jTable	
	 * 	
	 * @return javax.swing.JTable	
	 */    
	private JTable getJTable() {
		if (jTable == null) {
			jTable = new JTable(_dataModel);
		}
		return jTable;
	}
	/**
	 * This method initializes jScrollPane	
	 * 	
	 * @return javax.swing.JScrollPane	
	 */    
	private JScrollPane getJScrollPane() {
		if (jScrollPane == null) {
			jScrollPane = new JScrollPane();
			jScrollPane.setPreferredSize(new java.awt.Dimension(450,120));
			jScrollPane.setViewportView(getJTable());
		}
		return jScrollPane;
	}

	/**
	 * This is the default constructor
	 */
	public UserList() {
		super();
        _dataModel = new DefaultTableModel();
        _dataModel.addColumn("UserName");
        _dataModel.addColumn("ID-card");
        _dataModel.addColumn("Gender");
        _dataModel.addColumn("Credit");
        _dataModel.addColumn("VIP");
        _dataModel.addColumn("E-mail");
        jLabel = new JLabel();
        setLayout(new FlowLayout());
		jLabel.setText("                            User List...");
		jLabel.setPreferredSize(new java.awt.Dimension(600,60));
		jLabel.setFont(new java.awt.Font("Dialog", java.awt.Font.BOLD, 18));
		add(jLabel, null);
		add(getJScrollPane(), null);
		add(getJPanel(), null);
        jTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        updateUserListTable(null);
	}

    public void updateUserListTable(Condition [] conditions){
        _users = updateUserList(conditions);
        int row = _dataModel.getRowCount();
        for(int i= row-1; i>=0;i--)
            _dataModel.removeRow(i);
        if(_users!=null){
            for(int i = 0;i<_users.length;i++){
                _dataModel.addRow(new Object[]{
                    _users[i].get_userName(),
                    _users[i].get_card(),
                    _users[i].get_sex()?"male":"female" ,
                    new Integer(_users[i].get_point()),
                    _users[i].get_vip()?"yes":"no",
                    _users[i].get_email()
                });
            }
        }
    }

    public User [] updateUserList(Condition [] conditions){
        Administrator ad = new Administrator();
        return ad.GetUserList(User.GRP_CUSTOMER);
    }
    private class Handler implements ActionListener{
        public void actionPerformed(ActionEvent ev) {
            if("DELETE" == ev.getActionCommand()){
                System.out.println("userlist delete button clicked");
                JButton sourceBtn = (JButton) ev.getSource();
                JFrame parent = (JFrame) SwingUtilities.getAncestorOfClass(JFrame.class,
                        sourceBtn);
                int index=jTable.getSelectedRow();
                if(index<0||index>=jTable.getRowCount()){
                    JOptionPane.showMessageDialog(parent,
                                "Please choose a user",
                                 "Error" ,
                                JOptionPane.ERROR_MESSAGE
                                );
                    return;
                }

                int n = JOptionPane.showConfirmDialog(parent ,
                         "Do you want to delete it?",
                         "Delete user",
                         JOptionPane.YES_NO_OPTION);
                if(n == 0){
                    Operator op = new Operator();
                    if(op.DeleteUser(_users[index]))
                        JOptionPane.showMessageDialog(parent,"Delete Success!", "Delete User", JOptionPane.ERROR_MESSAGE);
                    else
                        JOptionPane.showMessageDialog(parent,"Delete Failed!", "Delete User", JOptionPane.ERROR_MESSAGE);
                    updateUserListTable(null);
                }


            }
            else if("MODIFY" == ev.getActionCommand()){
                System.out.println("userlist modify button cliked");
                JButton sourceBtn = (JButton) ev.getSource();
                JFrame parent = (JFrame) SwingUtilities.getAncestorOfClass(JFrame.class,
                        sourceBtn);
                int index=jTable.getSelectedRow();
                if(index<0||index>=jTable.getRowCount()){
                    JOptionPane.showMessageDialog(parent,
                                "Please choose a user",
                                 "Error" ,
                                JOptionPane.ERROR_MESSAGE
                                );
                    return;
                }
                UserPanel addUser = new UserPanel();
                addUser.setValues(_users[index]);
                addUser.getCancelButton().setText("Cancel");
                addUser.getCancelButton().setActionCommand("EXIT");
                JFrame frame = new JFrame("Modify a User");
                frame.setResizable(false);
		        frame.setSize(640, 320);
                frame.setContentPane(addUser);
                frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
                frame.setLocation(100,100);
                frame.setVisible(true);
            }
            else if("ADD" == ev.getActionCommand()){
                System.out.println("userlist add button cliked");
                UserPanel addUser = new UserPanel();
                addUser.setValues(null);
                addUser.getCancelButton().setText("Cancel");
                addUser.getCancelButton().setActionCommand("EXIT");
                JFrame frame = new JFrame("Add a User");
                frame.setResizable(false);
		        frame.setSize(640, 320);
                frame.setContentPane(addUser);
                frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
                frame.setLocation(100,100);
                frame.setVisible(true);
            }
            else if("UPDATE" == ev.getActionCommand()){
                System.out.println("userlist update button cliked");
                updateUserListTable(null);
            }

        }
    }

    public static void main(String[] args)
    {
        JFrame frame = new JFrame("UserList");
        frame.setResizable(false);
		frame.setSize(640, 320);
        frame.setContentPane(new UserList());
        //frame.pack();
        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        frame.setLocation(100,100);
        frame.setVisible(true);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -