Java & Mysql 餐饮管理系统 过程心得记录

------------------------------------------Have a Good Day~----------------------------------

暴力蓝桥  特判全崩

省一无望  心态已崩

暂别算法  JAVA走起

8说了 开搞开搞~~

本次的主要目的想用JAVA写一个类似于饭店自动点餐的程序,分为三个主要用户:客人,员工,经理

同时利用MySQL对餐厅的营业额,食材剩余量,员工开销进行实时维护

其实我刚开始想用Python写的,但是用Python写桌面应用不好封装 T T

无奈只能重拾Java 

教练,我想学Python T T

下边开始~~

2019.3.25

窗口的初步搭建

涉及:

JFrame 窗口

JPanel  面板组件  (暂时不知道具体咋实现的 日后搞懂再补充)

不同窗口的转换  (暂时不知道咋关  这就很尴尬)

JFrame 窗口搭建

       Toolkit kit=Toolkit.getDefaultToolkit();
        
        //获取当前屏幕的大小
        Dimension screenSize=kit.getScreenSize();
        int screenHight=screenSize.height;
        int screenWight=screenSize.width;
        
        //窗口大小
        setSize(screenWight/2,screenHight/2);
        setLocationByPlatform(true);
                
        //窗口位置
        setLocation(550,150);

icon 小图标的获取

        //获取图标
        Image img=new ImageIcon("F:\\Java_program\\Catering_management_system\\src\\catering_Management\\bin\\icon.png").getImage();
        setIconImage(img);

background 背景设置

    //背景图片设置
    public void paint(Graphics g)
    {
        File file = new File("F:\\Java_program\\Catering_management_system\\src\\catering_Management\\bin\\background.png");
        

//异常处理~
try { BufferedImage image=ImageIO.read(file); g.drawImage(image,0,0,null); } catch(Exception e) { e.printStackTrace(); } }

JPanel 初步搭建(我想搞的好看点,待补充)

        //顾客按键 进入顾客界面
        JButton customerButton= new JButton("Customer");
        //经理按键  进入经理界面
        JButton managerButton=new JButton("Manager");
        
        //员工按键 进入员工按键
        JButton staffButton= new JButton("Staff");
        
//私有的JPanel 对象 private JPanel buttonPanel1;
buttonPanel1
= new JPanel(); //将按键添加到面板 buttonPanel1.add(customerButton); buttonPanel1.add(managerButton); buttonPanel1.add(staffButton); add(buttonPanel1);

然后是最主要的

窗口转换

        //顾客按键 进入顾客界面
        JButton customerButton= new JButton("Customer");
        
        //等一手 lambda语句简化~~~~
        customerButton.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {
                //创建一个顾客窗口
                Customer customerWindow = new Customer();
                customerWindow.setTitle("Welcome~");
                customerWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                customerWindow.setVisible(true);
                
                //当前窗口关闭
                
                
            }
            
        }
        );

我觉得可以lambda简化~~~

我觉得是这么实现的:

首先 JButton 一个按键

然后对这个按键有一个 ActionListener 事件响应

对应的事件为创建一个 Customer 对象 

Customer实际上也继承了 JFrame 也是一个窗口类

然后创建Customer对象就等于创建了一个新的窗口

再将当前窗口关闭即可~

今天全部代码

Main函数

package catering_Management;

import javax.swing.JFrame; 


//Good Luck~
public class Main {

    public static void main(String[] args) {
        WindowFrame window=new WindowFrame();
        window.setTitle("餐饮管理系统");
        window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        window.setVisible(true);

    }

}

登录选择窗口

package catering_Management;

import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class WindowFrame extends JFrame{

    
    // JPanel 面板组件
    private JPanel buttonPanel1;
    
    public WindowFrame()
    {
        Toolkit kit=Toolkit.getDefaultToolkit();
        
        //获取当前屏幕的大小
        Dimension screenSize=kit.getScreenSize();
        int screenHight=screenSize.height;
        int screenWight=screenSize.width;
        
        //窗口大小
        setSize(screenWight/2,screenHight/2);
        setLocationByPlatform(true);
                
        //窗口位置
        setLocation(550,150);
                
        //获取图标
        Image img=new ImageIcon("F:\\Java_program\\Catering_management_system\\src\\catering_Management\\bin\\icon.png").getImage();
        setIconImage(img);
        
        //顾客按键 进入顾客界面
        JButton customerButton= new JButton("Customer");
        
        //等一手 lambda语句简化~~~~
        customerButton.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {
                //创建一个顾客窗口
                Customer customerWindow = new Customer();
                customerWindow.setTitle("Welcome~");
                customerWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                customerWindow.setVisible(true);
                
                //当前窗口关闭
                
                
            }
            
        }
        );
        //经理按键  进入经理界面
        JButton managerButton=new JButton("Manager");
        
        //员工按键 进入员工按键
        JButton staffButton= new JButton("Staff");
        
        
        
        buttonPanel1 = new JPanel();
        //将按键添加到面板
        buttonPanel1.add(customerButton);
        buttonPanel1.add(managerButton);
        buttonPanel1.add(staffButton);
        
        add(buttonPanel1);
        
        
    }
    

    
    //背景图片设置
    public void paint(Graphics g)
    {
        File file = new File("F:\\Java_program\\Catering_management_system\\src\\catering_Management\\bin\\background.png");
        
        try
        {
            BufferedImage image=ImageIO.read(file);
            g.drawImage(image,0,0,null);
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
        
    }
}

Customer 窗口

package catering_Management;

import java.util.Scanner;
import java.util.*;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Customer extends JFrame{
    
    public Customer()
    {
        Toolkit kit=Toolkit.getDefaultToolkit();
        
        //获取当前屏幕的大小
        Dimension screenSize=kit.getScreenSize();
        int screenHight=screenSize.height;
        int screenWight=screenSize.width;
        
        //窗口大小
        setSize(screenWight/2,screenHight/2);
        setLocationByPlatform(true);
                
        //窗口位置
        setLocation(550,150);
                
        //获取图标
        Image img=new ImageIcon("F:\\Java_program\\Catering_management_system\\src\\catering_Management\\bin\\customerIcon.png").getImage();
        setIconImage(img);
    }
    
    //背景图片设置
    public void paint(Graphics g)
    {
        File file = new File("F:\\Java_program\\Catering_management_system\\src\\catering_Management\\bin\\customerBackground.png");
        //image = ImageIO.read(file);
        
        try
        {
            BufferedImage image=ImageIO.read(file);
            g.drawImage(image,0,0,null);
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
        
    }
    
}

今天的训练赛没打..........

博弈论我是真的不会啊T T

-------------------------------------------------未完待续-------------------------------------------------------------

猜你喜欢

转载自www.cnblogs.com/zzRh-5479/p/10596790.html
今日推荐