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

📄 hotelctrlframe.java

📁 旅馆管理系统主要功能有添加
💻 JAVA
字号:
package ui;

import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JFrame;
import java.awt.Dimension;
import javax.swing.JScrollPane;
import java.awt.Rectangle;
import java.awt.event.ActionListener;
import java.util.LinkedList;

import javax.swing.JLabel;
import javax.swing.ImageIcon;
import javax.swing.JTable;
import javax.swing.JButton;

import dao.FileOperation;

import biz.Hotel;
import biz.TableModels;
import java.awt.Toolkit;

public class HotelCtrlFrame extends JFrame {

	private static final long serialVersionUID = 1L;

	private JPanel jContentPane = null;

	private JLabel jLabel_hotel = null;

	private JLabel jLabel = null;

	private JButton jButton_add = null;

	private JButton jButton_del = null;

	private JButton jButton_change = null;

	//酒店链表信息
	private LinkedList<Hotel> hotels=null;
	final private String HOTELFILE="hotel.txt";  //  @jve:decl-index=0:
	final private String HOTELPATH="D:/workspace/hotelCtrlSystem/src/edu/";  //  @jve:decl-index=0:

	private JScrollPane jScrollPane = null;

	private JTable jTable = null;
	
	/**
	 * This is the default constructor
	 */
	public HotelCtrlFrame(LinkedList<Hotel> hotels) {
		super();
		this.hotels=hotels;
		initialize();
	}

	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize() {
		this.setSize(650, 350);		
		this.setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getResource("/vo/head2.png")));
		this.setTitle("酒店预订管理界面");
		this.setVisible(true);
		this.addWindowListener(new java.awt.event.WindowAdapter() {
			public void windowOpened(java.awt.event.WindowEvent e) {    
				//从文件中读取信息,存放到链表hotels中去
//				hotels=FileOperation.readHotelFile(HOTELPATH+HOTELFILE);
			}
			public void windowClosing(java.awt.event.WindowEvent e) {
				//将链表中的信息存入到文件中去
//				if(hotels.size()>0){
					FileOperation.writeHotelFile(HOTELPATH+HOTELFILE, hotels);
//				}
			}
		});
		this.setContentPane(getJContentPane());
	}

	/**
	 * This method initializes jContentPane
	 * 
	 * @return javax.swing.JPanel
	 */
	private JPanel getJContentPane() {
		if (jContentPane == null) {
			jLabel = new JLabel();
			jLabel.setBounds(new Rectangle(149, 57, 117, 18));
			jLabel.setText("所有酒店信息如下:");
			jLabel_hotel = new JLabel();
			jLabel_hotel.setBounds(new Rectangle(8, 5, 128, 71));
			jLabel_hotel.setIcon(new ImageIcon(getClass().getResource("/vo/hotel.png")));
			jLabel_hotel.setText("JLabel");
			jContentPane = new JPanel();
			jContentPane.setLayout(null);
			jContentPane.add(jLabel_hotel, null);
			jContentPane.add(jLabel, null);
			jContentPane.add(getJButton_add(), null);
			jContentPane.add(getJButton_del(), null);
			jContentPane.add(getJButton_change(), null);
			jContentPane.add(getJScrollPane(), null);
		}
		return jContentPane;
	}

	/**
	 * This method initializes jButton_add	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton_add() {
		if (jButton_add == null) {
			jButton_add = new JButton();
			jButton_add.setBounds(new Rectangle(96, 258, 86, 28));
			jButton_add.setText("增加信息");
			final HotelCtrlFrame frame=this;
			jButton_add.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					
					new HotelOperaterFrame(hotels,frame);
				}
			});
		}
		return jButton_add;
	}

	/**
	 * This method initializes jButton_del	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton_del() {
		if (jButton_del == null) {
			jButton_del = new JButton();
			jButton_del.setBounds(new Rectangle(278, 258, 86, 28));
			jButton_del.setText("删除信息");
			jButton_del.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					//删除某项,如果选中了则删除------->(行标号从0开始)
					if(getJTable().getSelectedRow()!=-1){
						System.out.println(getJTable().getSelectedRow());
						//删除该行元素
						hotels.remove(getJTable().getSelectedRow());
						//更新table
						getJTable().setModel(new TableModels(hotels));
					}
				}
			});
		}
		return jButton_del;
	}

	/**
	 * This method initializes jButton_change	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton_change() {
		if (jButton_change == null) {
			jButton_change = new JButton();
			jButton_change.setBounds(new Rectangle(460, 258, 86, 28));
			jButton_change.setText("修改信息");
			final HotelCtrlFrame frame=this;
			jButton_change.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					//将选择的值传入					
					new HotelOperaterFrame(hotels,getJTable().getSelectedRow(),frame);
				}
			});
		}
		return jButton_change;
	}

	/**
	 * This method initializes jScrollPane	
	 * 	
	 * @return javax.swing.JScrollPane	
	 */
	private JScrollPane getJScrollPane() {
		if (jScrollPane == null) {
			jScrollPane = new JScrollPane();
			jScrollPane.setBounds(new Rectangle(7, 80, 625, 166));
			jScrollPane.setViewportView(getJTable());
		}
		return jScrollPane;
	}

	/**
	 * This method initializes jTable	
	 * 	
	 * @return javax.swing.JTable	
	 */
	public JTable getJTable() {
		
		if (jTable == null ) {
//			if(hotels.size()>0)
			jTable = new JTable(new TableModels(hotels));
			final HotelCtrlFrame frame=this;
			jTable.addMouseListener(new java.awt.event.MouseAdapter() {
				public void mouseClicked(java.awt.event.MouseEvent e) {
					//双击事件,与修改按钮处理结果同
					if( e.getClickCount()==2	){
						new HotelOperaterFrame(hotels,getJTable().getSelectedRow(),frame);
					}
				}
			});
		}
		return jTable;
	}

}  //  @jve:decl-index=0:visual-constraint="11,12"

⌨️ 快捷键说明

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