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

📄 roomlist.java

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

import java.awt.FlowLayout;
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 RoomPackage.Room;
import RoomPackage.RoomManager;
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 RoomList 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 Room []_rooms;
    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 RoomList() {
		super();
        _dataModel = new DefaultTableModel();
        _dataModel.addColumn("RoomID");
        _dataModel.addColumn("Type");
        _dataModel.addColumn("Price");
        _dataModel.addColumn("Room-Number");
        _dataModel.addColumn("Floor");
        jLabel = new JLabel();
        setLayout(new FlowLayout());
        jLabel.setText("                            Room 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);
        updateRoomListTable(null);
	}
    public void updateRoomListTable(Condition [] conditions){
        _rooms = updateRoomList(conditions);
        int row = _dataModel.getRowCount();
        for(int i= row-1; i>=0;i--)
            _dataModel.removeRow(i);
        if(_rooms!=null){
            for(int i = 0;i<_rooms.length;i++){
                _dataModel.addRow(new Object[]{
                    new Integer(_rooms[i].get_roomID()),
                    Room.ROOMTYPE[_rooms[i].get_roomType()],
                    new Integer((int)_rooms[i].get_roomPrice()),
                    _rooms[i].get_roomRoomNum(),
                    new Integer(_rooms[i].get_roomFloor())
                });
            }
        }
    }

    public Room [] updateRoomList(Condition [] conditions){
        Operator op = new Operator();
        return op.SearchRoom(conditions);
    }
    private class Handler implements ActionListener{
        public void actionPerformed(ActionEvent ev) {
            if("DELETE" == ev.getActionCommand()){
                System.out.println("roomlist 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 room",
                                 "Error" ,
                                JOptionPane.ERROR_MESSAGE
                                );
                    return;
                }
                int n = JOptionPane.showConfirmDialog(parent ,
                         "Do you want to delete it?",
                         "Delete Room",
                         JOptionPane.YES_NO_OPTION);
                if(n == 0){
                    RoomManager mgr = RoomManager.get_INSTANCE();
                    if(mgr.DeleteRoom(_rooms[index].get_roomID()))
                        JOptionPane.showMessageDialog(parent,"Delete Success!", "Delete Room", JOptionPane.ERROR_MESSAGE);
                    else
                        JOptionPane.showMessageDialog(parent,"Delete Failed!", "Delete Room", JOptionPane.ERROR_MESSAGE);
                    updateRoomListTable(null);
                }
            }
            else if("MODIFY" == ev.getActionCommand()){
                System.out.println("roomlist 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 room",
                                 "Error" ,
                                JOptionPane.ERROR_MESSAGE
                                );
                    return;
                }
                RoomPanel roomp = new RoomPanel();
                roomp.setValues(_rooms[index]);
                roomp.getCancelButton().setText("Cancel");
                roomp.getCancelButton().setActionCommand("EXIT");
                JFrame frame = new JFrame("Modify a Room");
                frame.setResizable(false);
		        frame.setSize(640, 320);
                frame.setContentPane(roomp);
                frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
                frame.setLocation(100,100);
                frame.setVisible(true);
            }
            else if("ADD" == ev.getActionCommand()){
                System.out.println("roomlist add button cliked");
                RoomPanel roomp = new RoomPanel();
                roomp.setValues(null);
                roomp.getCancelButton().setText("Cancel");
                roomp.getCancelButton().setActionCommand("EXIT");
                JFrame frame = new JFrame("Add a Room");
                frame.setResizable(false);
		        frame.setSize(640, 320);
                frame.setContentPane(roomp);
                frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
                frame.setLocation(100,100);
                frame.setVisible(true);
            }
            else if("UPDATE" == ev.getActionCommand()){
                System.out.println("orderlist update button cliked");
                updateRoomListTable(null);
            }

        }
    }

    public static void main(String[] args)
    {
        JFrame frame = new JFrame("RoomList");
        frame.setResizable(false);
		frame.setSize(640, 320);
        frame.setContentPane(new RoomList());
        //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 + -