자바 시각 화 인터페이스 KFC 주문 시스템 코드 인 스 턴 스 구현

제목
자바 로 가시 화 KFC 주문 시스템 구현.
2.문제 분석
자바 의 사용자 그래 픽 인터페이스 패키지 의 각 종류의 디자인 인터페이스 에 따라JFrame 을 이용 하여 가장 큰 용 기 를 제공 하고 각 패 널 을 설계 합 니 다.각 패 널 에 필요 한 구성 요 소 를 추가 합 니 다.이 프로그램 에 서 는 단추 구성 요소 에 감청 자 를 추가 하고 단 추 를 누 르 면 해당 하 는 구성 요 소 를 만들어 야 합 니 다.
프로그램 이 실행 중인 디 스 플레이 의 첫 번 째 인 터 페 이 스 는 JFrame 에 계승 되 는 클래스 run 클래스 가 구조 함수 에서 설계 되 고 함수 setVisible(true)을 통 해 인터페이스 에 표 시 됩 니 다.인터페이스 에'음식 주문'단추 가 있 습 니 다.이 단 추 를 누 르 면 응답 함 수 를 터치 하여 주문 인터페이스 에 들 어 갑 니 다.그 다음 에 주문 화면 에서 각 음식의 버튼'+'-'트리거 응답 을 통 해 사용자 류 client 의 대상 의 상대 적 인 변수 수량 을 바 꾸 고 화면 을 새로 고침 합 니 다.이 화면 에는 음식 종류의 네 가지 버튼 인'햄버거','간식','음료','세트'도 있 습 니 다.똑 같은 버튼 을 누 르 면 응답 을 눌 러 해당 하 는 화면 을 새로 고침 한 다음 에 두 가지 결제 모델 을 디자인 했 습 니 다.하 나 는 현금 결제 입 니 다.텍스트 상자 구성 요소 류 JTextField 를 사용 하여 구성 요 소 를 만 듭 니 다.이 구성 요소 에 지불 금액 을 입력 하 십시오.또한 QR 코드 를 스 캔 하여 지불 합 니 다.탭 구성 요소 JLabel 에 그림 을 추가 하면 됩 니 다.
프로그램 코드
자바 디자인 시각 화 인터페이스 를 처음 사용 하 는 프로그램 으로 원본 코드 가 번 거 로 워 졌 습 니 다.아래 의 일부 코드 를 사용 하 십시오.
주 함수 클래스:

import java.awt.*;
import java.io.Serializable;
import javax.swing.JFrame;
public class run implements Serializable{
	static String title = "KFC";
	static Beginning begin = new Beginning(title);
	static Order order=new Order(title);
	static JFrame[] frames= {begin,order};
	static saoma sao=new saoma("    ");					//     
	static Xiadan xiadan=new Xiadan("    ");				//      
	public static void main(String args[]) throws InterruptedException {

		for (int index = 0; index < frames.length; index++) {
			frames[index].setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
			frames[index].setPreferredSize(new Dimension(1000,900));
      screencentre(frames[index]);

			frames[index].pack();
		}
		frames[0].setVisible(true);

	}
  //          
	public static void screencentre(JFrame frame) {

		Toolkit kit = Toolkit.getDefaultToolkit(); //      

		Dimension screenSize = kit.getScreenSize(); //        

		int screenWidth = screenSize.width; //       

		int screenHeight = screenSize.height; //       

		
		frame.setLocation(screenWidth/4, screenHeight/15);//         
	}
}
프로그램 실행 첫 번 째 인터페이스:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Beginning extends JFrame{
	JPanel panel = new JPanel();								
	JLabel title = new JLabel("    KFC",JLabel.CENTER);	//    
	JLabel im = new JLabel(new ImageIcon("images/1.jpg"));	//    
	JButton order=new JButton(new ImageIcon("images/4.png"));	//    
	public Beginning(String name)
	{
		super(name);
		setLayout(new GridLayout(4,1));						//    
		title.setFont(new Font("KFC",Font.BOLD,50) );			//    
		add(title);												//    
		add(im);
		order.addActionListener(new BeginLis());				//     
		order.setBorderPainted(false);							//   
		JPanel jpanel2=new JPanel();
		jpanel2.setLayout(new GridLayout(1,3));
		jpanel2.add(new JPanel());
		jpanel2.add(order);
		jpanel2.add(new JPanel());
		add(jpanel2);
		//panel.add(title);
		//getContentPane().add(panel);
	}
	private class BeginLis implements ActionListener {
	  public void actionPerformed(ActionEvent e) {
	  	setVisible(false);
    	run.frames[1].setVisible(true);
		}
	}
}
QR 코드 결제 창:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class saoma extends JFrame{
	JPanel jpanel=new JPanel();
	JButton buttonwancheng=new JButton("    ");
	public saoma(String name) {
		super(name);
		JLabel jlabel=new JLabel(new ImageIcon("images/saoma.png"));
		jpanel.add(jlabel);
		this.setSize(700, 700);
		this.setLocation(300, 200);
		this.add(jpanel);
		this.add(buttonwancheng,BorderLayout.SOUTH);

		buttonwancheng.addActionListener(e->{
			run.sao.setVisible(false);
			run.xiadan.setVisible(false);
			run.frames[1].setVisible(false);
			System.exit(-1);
		});
	}
}
현금 지불 창구:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Xianjin extends JFrame{
	JPanel jpanel=new JPanel();

	JLabel jlabel=new JLabel("    ");
	JTextField in=new JTextField(20);
	JButton buttonzhifu=new JButton("  ");
	public Xianjin(String name) {
		super(name);
		this.setLayout(new GridLayout(2,1));
		this.setSize(700, 450);
		this.setLocation(300, 200);
		this.setVisible(true);
		this.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
		JTextArea show=new JTextArea(24,20);
		JScrollPane scrollpane=new JScrollPane(show);
		show.setEditable(false);
		show.append("     "+run.order.client1.num+" "+'
'+" :
"); this.add(scrollpane); jpanel.add(jlabel); jpanel.add(in); jpanel.add(buttonzhifu); this.add(jpanel); buttonzhifu.addActionListener(e->{ String content=in.getText(); float jinqian=Integer.parseInt(content); float zhaoling=jinqian-run.order.client1.num; if(jinqian<run.order.client1.num) { show.append(" ,
"); } else show.append(" "+jinqian+" , "+zhaoling+"
"+"
"); in.setText(""); }); } }
다음 창:

 import java.awt.*;
  import java.awt.event.*;
  import javax.swing.*;
  public class Xiadan extends JFrame{
  	JButton buttonxianjinzhifu=new JButton(new ImageIcon("images/xianjinzhifu.png"));
  	JButton buttonzhifubaosaoma=new JButton(new ImageIcon("images/zhifubaosaoma.png"));
  	JTextArea show=new JTextArea(24,20);
  	public Xiadan(String name)
  	{
  		super(name);
  
  		}
  	public void s() {
  		this.setLayout(new GridLayout(2,1));
  		this.setSize(700, 450);
  		this.setLocation(300, 200);
  
  		this.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
  	
  		JScrollPane scrollpane=new JScrollPane(show);
  		show.setEditable(false);
}
4.테스트 및 운영 결과
프로그램 실행 인터페이스:

"주문 음식"클릭:
 
각 음식의"+"를 클릭 하 십시오:
 


클릭"즉시 구 매":
 
"현금 지불"을 누 르 고 텍스트 상자 에 30 을 입력 한 후"지불"을 누 르 십시오.
 
"스 캔 결제"를 클릭:
 
 총화
자바 디자인 시각 화 프로그램 을 처음 사용 하여 사용자 그래 픽 인터페이스 에 대해 낯 설 었 을 뿐 디자인 모델 과 결합 하여 프로그램 코드 구 조 를 더욱 뚜렷 하 게 해 야 했다.처음으로 그래 픽 인터페이스 와 디자인 모델 응용 실천 이 적 었 기 때문에 이번 프로그램 디자인 은 디자인 모델 을 잘 결합 하지 못 했 고 이번 프로그램 코드 도 상대 적 으로 거 칠 었 다.쓰 는 과정 에서 여러 가지 문제 에 부 딪 혔 습 니 다.도형 인터페이스 디자인 은 이상 적 인 상태 에 있 지 않 습 니 다.천천히 인터넷 에 접속 하여 자 료 를 찾 고 책 을 조회 하 는 것 이 대부분 해결 되 었 습 니 다.다만 프로그램 에 작은 문제 가 존재 하고 경험 을 조금 쌓 았 습 니 다.
이번 실천 경험 이 있 으 면 다음 에는 조금 예 쁜 인터페이스 와 디자인 이 더욱 구조 적 이 고 뚜렷 한 코드 를 만 들 겠 습 니 다.
위 에서 말 한 것 은 소 편 이 여러분 에 게 소개 한 자바 KFC 주문 시스템 의 상세 한 해석 과 통합 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기