자바 시각 화 인터페이스 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 주문 시스템 의 상세 한 해석 과 통합 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.