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

📄 shopframe.java

📁 外卖管理程序
💻 JAVA
字号:
package gaasbooking;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.event.*;

public class ShopFrame extends JFrame{
	private static final long serialVersionUID  = 2L;
	
	public ShopFrame()
	{
		setTitle("Take away shop");
		setSize(new Dimension(900, 650));
		setResizable(false);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		mainpan = new JPanel();
		mainpan.setBorder(BorderFactory.createEmptyBorder(15,15,15,15));
		mainpan.setLayout(new GridLayout(1,2));
		
		leftpan = new JPanel();
		leftpan.setBorder(BorderFactory.createEmptyBorder(0,0,0,8));
		leftpan.setLayout(new FlowLayout(FlowLayout.LEFT));
		leftpan.setPreferredSize(new Dimension(420,620));
		left1 = new JLabel("Menu");
		left1.setForeground(Color.blue);
		left1.setFont(menuFont);
		
		bookName = new JTextField();
		bookName.setPreferredSize(new Dimension(400,25));
		
		menuModel = new DefaultListModel();
		bookList = new JList(menuModel);
		bookList.setFont(new Font("Monospaced",Font.BOLD,13));
		menuScroll = new JScrollPane(bookList);
		menuScroll.setPreferredSize(new Dimension(400,300));
		con.connection();
		con.updataMenu("", menuModel);
		con.close();
		
		left2 = new JLabel("Phone");
		left2.setPreferredSize(new Dimension(76,25));
		left2.setFont(menuFont);
		left2.setForeground(Color.blue);
		phoneNum = new JTextField();
		phoneNum.setPreferredSize(new Dimension(320,25));
		left3 = new JLabel("Address");
		left3.setPreferredSize(new Dimension(76,25));
		left3.setFont(menuFont);
		left3.setForeground(Color.blue);
		address = new JTextArea();
		address.setLineWrap(true);
		addressScroll = new JScrollPane(address);
		addressScroll.setPreferredSize(new Dimension(320,60));
		
		leftButtonPan = new JPanel();
		saveCustomer = new JButton("Save Customer");
		clear = new JButton("Clear");
		leftButtonPan.setPreferredSize(new Dimension(420,50));
		leftButtonPan.add(saveCustomer);
		leftButtonPan.add(clear);
		
		leftpan.add(left1);
		leftpan.add(bookName);
		leftpan.add(menuScroll);
		leftpan.add(left2);
		leftpan.add(phoneNum);
		leftpan.add(left3);
		leftpan.add(addressScroll);
		leftpan.add(leftButtonPan);
		
		rightpan = new JPanel();
		rightpan.setBorder(BorderFactory.createEmptyBorder(0,8,0,0));
		rightpan.setPreferredSize(new Dimension(420,620));
		rightpan.setLayout(new FlowLayout(FlowLayout.LEFT));
		right1 = new JLabel("Ordered Items");
		right1.setFont(menuFont);
		right1.setForeground(Color.blue);
		rightpan.add(right1);
		orderModel = new DefaultListModel();
		orderBookList = new JList(orderModel);
		orderScroll = new JScrollPane(orderBookList);
		orderBookList.setFont(new Font("Monospaced",Font.BOLD,13));
		orderScroll.setPreferredSize(new Dimension(400,300));
		rightpan.add(orderScroll);
		right2 = new JLabel("Total:");
		right2.setFont(menuFont);
		right2.setForeground(Color.blue);
		right2.setPreferredSize(new Dimension(76,25));
		rightpan.add(right2);
		right3 = new JLabel("0.00");
		right3.setFont(menuFont);
		right3.setForeground(Color.blue);
		right3.setPreferredSize(new Dimension(320,25));
		right3.setHorizontalAlignment(JLabel.RIGHT);
		rightpan.add(right3);
		right4 = new JLabel("SurName");
		right4.setFont(menuFont);
		right4.setForeground(Color.blue);
		right4.setPreferredSize(new Dimension(76,25));
		rightpan.add(right4);
		surName = new JTextField();
		surName.setPreferredSize(new Dimension(320,25));
		rightpan.add(surName);
		right5 = new JLabel("FirstName");
		right5.setFont(menuFont);
		right5.setForeground(Color.blue);
		right5.setPreferredSize(new Dimension(76,25));
		rightpan.add(right5);
		firstName = new JTextField();
		firstName.setPreferredSize(new Dimension(320,25));
		rightpan.add(firstName);
		right6 = new JLabel("PostCode");
		right6.setFont(menuFont);
		right6.setPreferredSize(new Dimension(76,25));
		right6.setForeground(Color.blue);
		rightpan.add(right6);
		postCode = new JTextField();
		postCode.setPreferredSize(new Dimension(320,25));
		rightpan.add(postCode);
		rightButtonPan = new JPanel();
		rightButtonPan.setPreferredSize(new Dimension(420,50));
		saveOrder = new JButton("SaveOrder");
		exit = new JButton("Exit");
		rightButtonPan.add(saveOrder);
		rightButtonPan.add(exit);
		rightpan.add(rightButtonPan);
		
		bookName.addCaretListener(new CaretListener(){
					public void caretUpdate(CaretEvent e)
					{
						con.connection();
						con.updataMenu(bookName.getText().trim(), menuModel);
						con.close();
					}
				}
		);
		saveCustomer.addMouseListener(new MouseAdapter(){
			public  void mouseClicked(MouseEvent e)
			{
				if(phoneNum.getText().trim().isEmpty()||
						address.getText().trim().isEmpty()||
						surName.getText().trim().isEmpty()||
						firstName.getText().trim().isEmpty()||
						postCode.getText().trim().isEmpty())
				{
					JOptionPane.showConfirmDialog(null,"some infomation is empty!","err!",JOptionPane.OK_OPTION);
					return;
				}
				con.connection();
				con.insertCustomer(phoneNum.getText().trim(),
						address.getText().trim(),
						surName.getText().trim(),
						firstName.getText().trim(),
						postCode.getText().trim());	
				con.close();
			}
		});
		clear.addMouseListener(new MouseAdapter(){
			public void mouseClicked(MouseEvent e)
			{
				phoneNum.setText("");
				address.setText("");
				surName.setText("");
				firstName.setText("");
				postCode.setText("");
			}
		});
		exit.addMouseListener(new MouseAdapter(){
			public void mouseClicked(MouseEvent e)
			{
				System.exit(0);
			}
		});
		saveOrder.addMouseListener(new MouseAdapter(){
			public void mouseClicked(MouseEvent e)
			{
				if(orderModel.getSize() == 0)
				{
					JOptionPane.showConfirmDialog(null,"OrderItems is empty!","err!",JOptionPane.OK_OPTION);
					return;
				}
				if(phoneNum.getText().isEmpty())
				{
					JOptionPane.showConfirmDialog(null,"phoneNum is empty!","err!",JOptionPane.OK_OPTION);
					return;
				}
				String orderList = "";
				orderList += orderModel.elementAt(0).toString().substring(0,4);
				for(int i = 1;i < orderModel.getSize();i ++)
				{
					orderList += ",";
					orderList += orderModel.elementAt(i).toString().substring(0,4);
				}
				Calendar cal=Calendar.getInstance();
				con.connection();
				con.insertOrder(phoneNum.getText().trim(),cal.get(Calendar.YEAR)+"-"+cal.get(Calendar.MONTH)+"-"+cal.get(Calendar.DATE),orderList);
				con.close();
			}
		});
		bookList.addMouseListener(new MouseAdapter(){
				public void mouseClicked(MouseEvent e)
				{
					if(e.getClickCount() == 2)
					{
						orderModel.addElement(bookList.getSelectedValue());
					}
				}
			}
		);
		orderBookList.addMouseListener(new MouseAdapter(){
			public void mouseClicked(MouseEvent e)
			{
				if(e.getClickCount() == 2)
				{
					if(orderModel.getSize() != 0)
					{
						delOrder = orderBookList.getSelectedValue().toString();
						orderModel.remove(orderBookList.getSelectedIndex());
					}
				}
			}
		});
		
		orderModel.addListDataListener(new ListDataListener(){
			public void intervalAdded(ListDataEvent e){
				con.connection();
				con.updataTotal(1, right3,orderModel.getElementAt(orderModel.getSize()-1).toString().substring(0, 4));
				con.close();
			}
			public void intervalRemoved(ListDataEvent e){
				con.connection();
				con.updataTotal(0, right3,delOrder.toString().substring(0, 4));
				con.close();
			}
			public void contentsChanged(ListDataEvent e){
			}
		});
		
		mainpan.add(leftpan);
		mainpan.add(rightpan);
		add(mainpan);
		
		telServer = new TelServer();
		telServer.getFrame(this);
		telThread = new Thread(telServer);
		telThread.start();
	}
	private JPanel mainpan,leftpan,rightpan,leftButtonPan,rightButtonPan;
	private JLabel left1,left2,left3,right1,right2,right3,right4,right5,right6;
	JTextField bookName,phoneNum,surName,firstName,postCode;
	JTextArea address;
	private JList bookList,orderBookList;
	final DefaultListModel menuModel,orderModel;
	private JScrollPane menuScroll,addressScroll,orderScroll;
	private DatabaseCon con = new DatabaseCon();
	private Font menuFont = new Font(null,Font.BOLD,15);
	private JButton saveCustomer,clear,saveOrder,exit;
	private String delOrder;
	TelServer telServer;
	Thread telThread;
	

	public static void main(String[] arg)
	{
			ShopFrame temp = new ShopFrame();
			temp.setVisible(true);
	}
}

⌨️ 快捷键说明

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