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

📄 mainframe.java

📁 java开发的酒店管理系统
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;
import javax.imageio.*;
import java.io.*;
import javax.swing.JLabel;
import java.awt.Window;
import java.sql.*;
import javax.swing.event.*;
import java.awt.MediaTracker;
import javax.swing.border.*;
import java.util.*;
import javax.swing.Timer;

class mainFrame extends JFrame
{
	public mainFrame(String name)
	{
		mainP=new mainPane(name);
		newFrame();
	}
	
	/*
	public mainFrame()
	{
		mainP=new mainPane("XXX");
		newFrame();
	}
	*/
	
	public void newFrame()
	{
		setResizable(false);
		setBackground(new Color(204,255,255));
		Toolkit kit =Toolkit.getDefaultToolkit();
		Dimension screenSize=kit.getScreenSize();
		int screenWidth=screenSize.width;
		int screenHeight=screenSize.height;
		setLocation((screenWidth-DEFA_W)/2,(screenHeight-DEFA_H)/2);
	  setSize(DEFA_W,DEFA_H);
	  setTitle("酒店客房管理系统");
	  add(mainP);
	  setVisible(true);
	  JMenuBar menub=new JMenuBar();
    setJMenuBar(menub);
	}
	private mainPane mainP;
	
	private final int DEFA_W=500;
	private final int DEFA_H=430;
}

class mainPane extends JPanel
{
	public mainPane(String name)
	{
		USERNAME=name;
		setBackground(new Color(153,204,204));
		Border etched=BorderFactory.createEtchedBorder(EtchedBorder.RAISED);
  	Border titled=BorderFactory.createTitledBorder(etched,"查询服务");
  	Border titledkai=BorderFactory.createTitledBorder(etched,"开房服务");
  	Border titledtui=BorderFactory.createTitledBorder(etched,"退房服务");
		setLayout(null);
		top t=new top();
		timeDate TD=new timeDate();
		sele sel=new sele();
		kai k=new kai();
		tui tui=new tui();
		exit ex=new exit();
    add(t);
    add(TD);
    add(sel);
    add(k);
    add(tui);
    add(ex);
    sel.setBorder(titled);
    k.setBorder(titledkai);
    tui.setBorder(titledtui);
    t.setBounds(0,0,500,100);
    TD.setBounds(0,110,500,25);
    sel.setBounds(20,140,130,191);
    k.setBounds(180,140,130,191);
    tui.setBounds(330,140,130,191);
    ex.setBounds(270,330,220,60);
    try
    {
    	connDBQ();
    }
    catch(SQLException e)
    {
    	System.out.println("错误");
    	e.printStackTrace();
    }
  }
  
  public void connDBQ() throws SQLException
	{
		try
		{
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
		}
		catch(ClassNotFoundException e){}
		String URL="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=mdb.mdb";//不用建立odbc数据源
		conn=DriverManager.getConnection(URL);
		stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
		rs=stmt.executeQuery("select * from user where name like '"+USERNAME+"'");
		try
		{
			while(rs.next())
			{
				yuanGongID=rs.getString("yuangongid");
				yuanGongName=rs.getString("yuangongname");
			}
		}
		catch(SQLException e){}
		System.out.print(USERNAME+"    "+yuanGongID+"    "+yuanGongName);
		stmt.executeUpdate("delete from dangqian");
		stmt.executeUpdate("insert into dangqian (name,yuangongid,yuangongname) values ('"+USERNAME+"','"+yuanGongID+"','"+yuanGongName+"')");
  }
  
  
  private class top extends JPanel
  {
  	public top()
  	{
  		setLayout(null);
  	  Toolkit kit =Toolkit.getDefaultToolkit();
		  top=kit.getImage("mainframe.gif");
		  MediaTracker tracker=new MediaTracker(this);
		  tracker.addImage(top,0);
		  try
		  {
		    top=ImageIO.read(new File("mainframe.gif"));
		  }
		  catch(IOException e)
		  {
		  	e.printStackTrace();
		  }
	  }
	  
	  public void paintComponent(Graphics g)
	  {
	  	g.drawImage(top,0,0,500,100,null);
	  }
	  
	  private Image top;
  }
	
	
	
	
	private class timeDate extends JPanel
	{
		public timeDate()
		{
			setBackground(new Color(153,204,204));
			timeAction TA=new timeAction();
			Timer t=new Timer(1000,TA);
			t.start();
		}
		public void paintComponent(Graphics g)
		{
			super.paintComponent(g);
			Graphics2D g2=(Graphics2D)g;
			g2.setPaint(Color.BLACK);
			if(hh>18||hh<6)
			g2.drawString(USERNAME+": 晚上好",50,15);
			else if(hh<10)
			g2.drawString(USERNAME+": 早上好",50,15);
			else if(hh<12)
			g2.drawString(USERNAME+": 上午好",50,15);
			else if(hh<15)
			g2.drawString(USERNAME+": 中午好",50,15);
			else if(hh<19)
			g2.drawString(USERNAME+": 下午好",50,15);
			g2.setPaint(Color.RED);
			g2.drawString("今天是:",210,15);
			g2.drawString(year+"",260,15);
			g2.drawString("年",293,15);
			g2.drawString(month+"",315,15);
			g2.drawString("月",324,15);
			g2.drawString(day+"",341,15);
			g2.drawString("日",356,15);
			switch (week)
			{
				case 1:
					g2.drawString("星期 一",376,15);
					break;
				case 2:
					g2.drawString("星期 二",376,15);
					break;
				case 3:
					g2.drawString("星期 三",376,15);
					break;
				case 4:
					g2.drawString("星期 四",376,15);
					break;
				case 5:
					g2.drawString("星期 五",376,15);
					break;
				case 6:
					g2.drawString("星期 六",376,15);
					break;
				case 0:
					g2.drawString("星期 日",376,15);
					break;
			}
			if(hh>9)
				g2.drawString(hh+"",430,15);
			else
				g2.drawString("0"+hh+"",430,15);
			g2.drawString(":",446,15);
			if(mm>9)
				g2.drawString(mm+"",450,15);
			else
				g2.drawString("0"+mm+"",450,15);
			g2.drawString(":",466,15);
			if(ss>9)
				g2.drawString(ss+"",470,15);
			else
				g2.drawString("0"+ss+"",470,15);
		}
		
		private class timeAction implements ActionListener
		{
			public void actionPerformed(ActionEvent Event)
			{
				gregor=new GregorianCalendar();
				year=gregor.get(Calendar.YEAR);
				month=gregor.get(Calendar.MONTH)+1;
				day=gregor.get(Calendar.DAY_OF_MONTH);
				week=gregor.get(Calendar.DAY_OF_WEEK)-1;
				hh=gregor.get(Calendar.HOUR_OF_DAY);
				mm=gregor.get(Calendar.MINUTE);
				ss=gregor.get(Calendar.SECOND);
				ss=ss+1;
				if(ss==60)
				{
					ss=0;
					mm=mm+1;
				}
				
				if(mm==60)
				{
					mm=0;
					hh=hh+1;
				}
				
				if(hh==24)
				{
					hh=0;
					day=day+1;
					day=gregor.get(Calendar.DAY_OF_MONTH);
				}
				repaint();
			}
		}
		
		private GregorianCalendar gregor;
		private int day;
		private int month;
		private int year;
		private int week;
		private int hh;
		private int mm;
		private int ss;
		
	}
	
	
	
	
  private class sele extends JPanel
  {
  	public sele()
  	{
  		setBackground(new Color(153,204,204));
  		setLayout(null);
  		JButton kongfang=new JButton("空房查询");
  		JButton dengji=new JButton("登记查询");
  		JButton riqi=new JButton("系统设置");
  		add(kongfang);
  		add(dengji);
  		add(riqi);
  		kongfang.setBounds(10,20,110,40);
  		dengji.setBounds(10,80,110,40);
  		riqi.setBounds(10,140,110,40);
  		kongFangAction KFA=new kongFangAction();
  		kongfang.addActionListener(KFA);
  		dengJiAction DJA=new dengJiAction();
  		dengji.addActionListener(DJA);
  	}
  	
  	private class kongFangAction implements ActionListener
		{
			public void actionPerformed(ActionEvent Event)
			{
				kongFangChaXun KFCX=new kongFangChaXun();
				KFCX.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
				KFCX.setVisible(true);
			}
		}
		
		private class dengJiAction implements ActionListener
		{
			public void actionPerformed(ActionEvent Event)
			{
				dengJi dengJiF=new dengJi();
				dengJiF.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
				dengJiF.setVisible(true);
			}
		}
  }
  
  private class kai extends JPanel
  {
  	public kai()
  	{
  		setBackground(new Color(153,204,204));
  		setLayout(null);
  		JButton kaifang=new JButton("开房服务");
  		JButton jiaoxing=new JButton("叫醒服务");
  		add(kaifang);
  		add(jiaoxing);
  		kaifang.setBounds(10,20,110,40);
  		jiaoxing.setBounds(10,80,110,40);
  		kaiFangAction KFA=new kaiFangAction();
  		kaifang.addActionListener(KFA);
  	}
  	
  	private class kaiFangAction implements ActionListener
  	{
  		public void actionPerformed(ActionEvent Event)
  		{
  			kaiFangOk KFOK=new kaiFangOk("");
				KFOK.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
				KFOK.setVisible(true);
  		}
  	}
  }
  
  
  private class tui extends JPanel
  {
  	public tui()
  	{
  		setBackground(new Color(153,204,204));
  		setLayout(null);
  		JButton tuifang=new JButton("退房结帐");
  		JButton xufang=new JButton("客房续期");
  		add(tuifang);
  		add(xufang);
  		tuifang.setBounds(10,20,110,40);
  		xufang.setBounds(10,80,110,40);
  		tuiFangAction TFA=new tuiFangAction();
  		tuifang.addActionListener(TFA);
  	}
  	
  	private class tuiFangAction implements ActionListener
  	{
  		public void actionPerformed(ActionEvent Event)
  		{
  			String Tell=null;
  			String tell=null;
  			try
  			{
  				rs=stmt.executeQuery("select * from dengji");
  				while(rs.next())
  				{
  					if(Tell==null)
  					Tell=rs.getString("fangjianhao");
  					else
  					Tell=Tell+rs.getString("fangjianhao");
  				}
  			}
  			catch(SQLException e){}
  			try
  			{
  				tell=JOptionPane.showInputDialog("请输入客房号");
  			}
  			catch(NumberFormatException e){}
  			//if(tell!=0)
  			//{
  			try
  			{
  				if(Tell.indexOf(tell)<0)
  				{
  					JOptionPane.showMessageDialog(null,"没有此客房或此客房未住人");
  				}
  				else
  				{
  					//tuiFang TF=new tuiFang(tell);
  					//TF.
  				}
  			}
  			catch(NumberFormatException e){}
  			catch(NullPointerException ee){}
  		}
  	}
  }
 
  
  private class exit extends JPanel
  {
  	public exit()
  	{
  		setBackground(new Color(153,204,204));
  		setLayout(null);
  		JButton exit=new JButton("退出系统");
  		JButton XiuGai=new JButton("修改密码");
  		add(exit);
  		add(XiuGai);
  		exit.setBounds(110,10,100,40);
  		XiuGai.setBounds(10,10,90,40);
  	  quxiaoAction EXAction=new quxiaoAction();
  	  XiuGaiAction XGAction=new XiuGaiAction();
	    exit.addActionListener(EXAction);
	    XiuGai.addActionListener(XGAction);
  	}
  }
  private class quxiaoAction implements ActionListener		//“取消”的事件监视器
	{
	  	public void actionPerformed(ActionEvent Event)
	  	{
	  		try
	  		{
	  			stmt.executeUpdate("delete from dangqian where name like '"+USERNAME+"'");
	  		}
	  		catch(SQLException e){}
	  		System.exit(0);		//退出程序
	  	}
	}
	
	private class XiuGaiAction implements ActionListener
	{
		public void actionPerformed(ActionEvent Event)
		{
			xiuGai XIUGAI=new xiuGai(USERNAME);
			XIUGAI.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
			XIUGAI.setVisible(true);
		}
	}
	
	
	private Connection conn=null;
	private Statement stmt=null;
	private ResultSet rs=null;
	
	
	private String USERNAME;
	private String yuanGongID;
	private String yuanGongName;
	
}

⌨️ 快捷键说明

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