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

📄 xp_hotelbill.java

📁 这是一个酒店管理系统!很经典的哟~~~~初学者可以拿去看看
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
import java.sql.*;
import java.io.*;
import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.DefaultListModel;
public class XP_hotelbill implements ActionListener
{
	JFrame f=null;
	public XP_hotelbill()
	{
		f=new JFrame("福佑饭店欢迎你!");//创建一个顶层容器
		f.setBounds(360,260,130,130);
		f.setResizable(false);
		Container contentPane = f.getContentPane();//获得内容面板
		JPanel Panel2 = new JPanel();//
		JLabel Label_welcome = new JLabel(new ImageIcon("Z_HY.jpg"),SwingConstants.CENTER);
		
		JButton b =new JButton("进入菜单");
		b.addActionListener(this);
		Panel2.add(b);
		b=new JButton("退出系统");
		b.addActionListener(this);//为按钮增加事件监听器
		Panel2.add(b);//将按钮添加到中间容器
		
		Panel2.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(Color.red,3),//设置蹭容器边框
		"",TitledBorder.CENTER,TitledBorder.TOP));
		contentPane.add(Label_welcome,BorderLayout.CENTER);
		contentPane.add(Panel2,BorderLayout.SOUTH);
		
		
		JMenuBar mBar =new JMenuBar();//创建菜单条
		JMenu selection=new JMenu("选项");
		JMenuItem regist=new JMenuItem("进入菜单");
		JMenuItem sum=new JMenuItem("退出系统");
		selection.add(regist);
		selection.add(sum);
		mBar.add(selection);
		f.setJMenuBar(mBar);//为窗体增加菜单
		regist.addActionListener(this);//为菜单添加事件监听器
		sum.addActionListener(this);		
		f.pack();//进行排版
		f.setVisible(true);//显示窗口		
		f.addWindowListener(new WindowAdapter(){//为窗口操作添加监听器
			public void windowClosing(WindowEvent e){
				System.exit(0);
			}
		});
	}	
	public void actionPerformed(ActionEvent e)
	{
			String cmd=e.getActionCommand();
			if(cmd.equals("进入菜单"))
			{
				new XP_select(f);
			}
			else if(cmd.equals("退出系统"))
			{
				System.exit(0);
			}
	}
	public static void main(String[] args)
	{
			new XP_hotelbill();
	}
}
class XP_select implements ActionListener
{
	JFrame J;
	static boolean flag = true;
	final int LISTCONTENS = 20;	
	static int GUKE_billnum=0;//顾客的菜单出菜号码
	JList List_caidan1;//显示菜名的列表
	JList List_caidan2;//显示已选择的菜名的列表	
	JLabel J_id;//菜号
	JLabel J_name;//菜的名字
	JLabel J_price;//菜的价格
	JLabel J_leibie;//菜所属类别
	JTextField J_part;//菜的份数
	JComboBox J_desknum;//桌号
	JLabel Spend;//当前消费
	JSpinner S1;//有序变化选择框
	JLabel Caidetupian = new JLabel();//菜的图片	
	
	JPanel I= new JPanel();//
	
	static String select1;//在已选菜单列表中被选中的项
	static String select2;//菜单列表中被选中的项
	String List1[]=new String[LISTCONTENS];//列表数组
	String List2[]=new String[LISTCONTENS];//列表数组
	String List3[]=new String[LISTCONTENS];//初始化
	XP_select(JFrame Z)
	{
		J=new JFrame("福佑饭店欢迎你!");
		J.setSize(33,33);
		J.setBounds(20,0,100,100);
		Container contentPane = J.getContentPane();//获得内容面板
		JPanel Panelh_NORTH = new JPanel();//创建上部窗口		
		JPanel Panelh_CENTER = new JPanel();
		JPanel Panelh_SOUTH = new JPanel();
		JPanel Panelh_CENTER_RIGTH= new JPanel();
		JPanel Panelh_CENTER_LEFT= new JPanel();
		JPanel Panelh_CENTER_CENTER= new JPanel();
		JPanel Panelh_CENTER_WEST= new JPanel();
		JPanel Panelh_CENTER_EAST= new JPanel();
		
		Panelh_CENTER_RIGTH.setLayout(new GridLayout(1,1));
		Panelh_CENTER_CENTER.setLayout(new GridLayout(6,2));
		Panelh_CENTER_LEFT.setLayout(new GridLayout(1,1));		
		Panelh_CENTER.setLayout(new GridLayout(1,3));
		Panelh_SOUTH.setLayout(new GridLayout(3,2));
		
		Panelh_CENTER_RIGTH.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(Color.red,2),"我的菜单",TitledBorder.CENTER,TitledBorder.TOP));
		Panelh_CENTER_CENTER.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(Color.blue,2),"详细",TitledBorder.CENTER,TitledBorder.TOP));
		Panelh_CENTER_LEFT.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(Color.green,2),"菜单",TitledBorder.CENTER,TitledBorder.TOP));

		
		Panelh_NORTH.add(new JLabel(new ImageIcon("HY.jpg")));
		try
		{
					ResultSet rs =null;
					Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
					//Connection con =DriverManager.getConnection("jdbc:odbc:CAIDAN","Test","1234");
					Connection con =DriverManager.getConnection("jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=F:\\java-test\\hotel-panxianyu-zonghe\\LIST.mdb");
					Statement stmt=con.createStatement();
					rs=stmt.executeQuery("Select* From CAIDAN");
					
					int i=0;
			while(rs.next())
			{
					List1[i]=rs.getString("Name");
					i++;
			}			
			stmt.close();
			con.close();		
		}
		catch(Exception ex){System.out.println("eee");}		
		List_caidan1 = new JList(List1);//将数据库中以列表的形式显示出来		
		List_caidan2 = new JList(List3);
		Panelh_CENTER_LEFT.add(new JScrollPane(List_caidan1));//为菜单增加滚动条
		List_caidan1.setCellRenderer(new CellRenderer());//为菜单加入图片	
		List_caidan1.setToolTipText("都是美味佳肴哦!");	
		//添加鼠标事件
		MouseListener mouseListener = new MouseAdapter(){public void mouseClicked(MouseEvent e){mouseClick(e);}};
		List_caidan1.addMouseListener(mouseListener);
		
	
		
		 
		//增加中间菜单项
		Panelh_CENTER_CENTER.add(new JLabel("菜 号 :",SwingConstants.CENTER));
		J_id = new JLabel();
		Panelh_CENTER_CENTER.add(J_id);		
		Panelh_CENTER_CENTER.add(new JLabel("菜 名 :",SwingConstants.CENTER));
		J_name = new JLabel();
		Panelh_CENTER_CENTER.add(J_name);
		Panelh_CENTER_CENTER.add(new JLabel("价 格 :",SwingConstants.CENTER));
		J_price = new JLabel();
		Panelh_CENTER_CENTER.add(J_price);	
		Panelh_CENTER_CENTER.add(new JLabel("类 别 :",SwingConstants.CENTER));
		J_leibie = new JLabel();
		Panelh_CENTER_CENTER.add(J_leibie);	
		Panelh_CENTER_CENTER.add(new JLabel("份 数 :",SwingConstants.CENTER));
		S1 = new JSpinner(new SpinnerNumberModel(1,1,100,1));//创建从1到100,间隔为1的有序选择框
		JPanel P1= new JPanel();
		P1.setLayout(new GridLayout(3,1));
		P1.add(new JLabel(" 要 几 份 ",SwingConstants.CENTER));
		P1.add(S1);
		Panelh_CENTER_CENTER.add(P1);		
		JLabel B1 = new JLabel("坐 号 :");	
		JPanel P2= new JPanel();
		P2.add(B1);
		Panelh_CENTER_CENTER.add(P2);		
		JPanel P11= new JPanel();
		JLabel W1 = new JLabel("下 框 中 选 择 你 的 坐 位 号",SwingConstants.CENTER);
		String []data1 = {"0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"};
		J_desknum =new JComboBox(data1);
		J_desknum.setEditable(false);
		P11.setLayout(new GridLayout(3,1));
		P11.add(W1);
		P11.add(J_desknum);		
		Panelh_CENTER_CENTER.add(P11);		
		JLabel Spend1 = new JLabel("你 当 前 的 消 费 是 :",SwingConstants.RIGHT);
		Spend =new JLabel();
		Panelh_SOUTH.add(Spend1);
		Panelh_SOUTH.add(Spend);
		Spend.setText("0"+" "+"元");		
		JButton P_S_Y = new JButton(" 确 定 ");
		P_S_Y.setToolTipText("**先选这些吧**");
		JPanel J_S_Y = new JPanel();
		J_S_Y.add(P_S_Y,SwingConstants.CENTER);//让确定居中显示		
		Panelh_SOUTH.add(J_S_Y);		
		JButton P_S_N = new JButton(" 取 消 ");
		P_S_N.setToolTipText("**今天胃口不好,改天再来吃吧**");
		JPanel J_S_N = new JPanel();
		J_S_N.add(P_S_N,SwingConstants.CENTER);//让取消居中显示
		Panelh_SOUTH.add(J_S_N);
		
		P_S_Y.addActionListener(this);//添加确定按钮监听器
		P_S_N.addActionListener(this);//添加取消按钮监听器
		
		
			
		//为菜单添加鼠标响应事件
		List_caidan2.addMouseListener(mouseListener);
		List_caidan2.setToolTipText("双击就知道你已选择了几份哦");
		
		//中间右边的我的菜单
		JPanel P= new JPanel();
		P.setLayout(new GridLayout(3,1));//添加确定和取消		
		I.setLayout(new GridLayout(1,2));//我的菜间的排版方式
		JPanel U1= new JPanel();
		JPanel U2= new JPanel();
		JPanel U3= new JPanel();
		JButton K1 = new JButton(" 吃 这 个>>");
		K1.addActionListener(this);
		K1.setToolTipText("将选中的菜加入我的菜单");
		JButton K2 = new JButton("<<下 次 吃 ");	
		K2.setToolTipText("删除我的菜单中的菜");
		K2.addActionListener(this);	
		U1.add(K1);
		U2.add(K2);
		U3.add(Caidetupian);		
		P.add(U3);
		P.add(U1);
		P.add(U2);
		
		Caidetupian.addMouseListener(mouseListener);
		I.add(P);
		I.add(new JScrollPane(List_caidan2));
		Panelh_CENTER_RIGTH.add(I);
		
		
		//增加中间左半部分	
		Panelh_CENTER.add(Panelh_CENTER_LEFT);
		//增加中间部分	
		Panelh_CENTER.add(Panelh_CENTER_CENTER);
		//增加中间右半部分
		Panelh_CENTER.add(Panelh_CENTER_RIGTH);	
		//添加总内容页面
		contentPane.add(Panelh_NORTH,BorderLayout.NORTH);
		contentPane.add(Panelh_CENTER,BorderLayout.CENTER);
		contentPane.add(Panelh_SOUTH,BorderLayout.SOUTH);
		
		J.pack();
		J.setVisible(true);
	}
	public void mouseClick(MouseEvent e)
	{
		//访问数据库
		if (e.getSource() == List_caidan1)
    {
       if(e.getClickCount() == 1)
       {
       		int index = List_caidan1.locationToIndex(e.getPoint());//记住鼠标的当前坐标
        	List_caidan1.setSelectedIndex(index);  //找到当前你所选择的项
        	Caidetupian.setIcon(new ImageIcon(List_caidan1.getSelectedIndex()+"c"+".jpg"));//设置当前菜的图片
       		select1 =(String) List_caidan1.getSelectedValue();    				
					ResultSet rs = null;
					try
					{
							Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
							//Connection con =DriverManager.getConnection("jdbc:odbc:CAIDAN","Test","1234");
							Connection con =DriverManager.getConnection("jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=F:\\java-test\\hotel-panxianyu-zonghe\\LIST.mdb");
							Statement stmt=con.createStatement();
							rs=stmt.executeQuery("Select*From CAIDAN");				
							while(rs.next())
							{

⌨️ 快捷键说明

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