세미프로젝트 진행 계속
메뉴 고르고 금액이 표시되는 프레임에 대대적인 수정이 있었음.
세미프로젝트 기한 : 24.01.15 월요일 오전까지
제출 : 소스코드 + ppt
package com.tech.semiprj;
public class Run {
public static void main(String[] args) throws Exception {
new ToastDB();
new MainFrame();
}
}
run.java
package com.tech.semiprj;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
public class ToastDB {
public static Connection ToastDBConnection() {
Connection con = null;
String url = "jdbc:oracle:thin:@localhost:1521:xe";
String id = "hr";
String pass = "123456";
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
con = DriverManager.getConnection(url, id, pass);
} catch (Exception e) {
}
return con;
}
}
ToastDB.java
package com.tech.semiprj;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
public class Toast {
public ResultSet rs;
public Statement stmt;
public ArrayList<Toast> menulist = new ArrayList<Toast>();
public int tno,tcnt,tprice;
public String tcat,tname;
public static void main(String[] args) {
new Toast();
}
public Toast() {
Connection con = ToastDB.ToastDBConnection();
try {
stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
rs = stmt.executeQuery("select * from toast");
while (rs.next()) {
menulist.add(new Toast(rs.getInt("tno"), rs.getString("tcat"), rs.getString("tname"), rs.getInt("tcnt"),
rs.getInt("tprice")));
}
} catch (SQLException e) {
};
}
public Toast (int tno, String tcat, String tname, int tcnt, int tprice) {
this.tno=tno;
this.tcat=tcat;
this.tname=tname;
this.tcnt=tcnt;
this.tprice=tprice;
}
public int getTno() {
return tno;
}
public int getTcnt() {
return tcnt;
}
public int getTprice() {
return tprice;
}
public String getTcat() {
return tcat;
}
public String getTname() {
return tname;
}
}
Toast.java
package com.tech.semiprj;
import java.awt.Color;
import java.awt.Container;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
public class MainFrame extends JFrame {
public MainFrame() {
setTitle("MainFrame");
setSize(640,600);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container main=getContentPane();
main.setLayout(null);
JPanel mainImage=new JPanel();
mainImage.setSize(640,600);
mainImage.setLocation(0,0);
mainImage.setBackground(Color.orange);
JButton mainButton=new JButton();
mainButton.setSize(600,100);
mainButton.setLocation(10,450);
mainButton.setBackground(Color.red);
mainButton.setForeground(Color.yellow);
mainButton.setFont(new Font("Gothic",Font.BOLD,30));
mainButton.setText(">> 이곳을 눌러 주문해주세요 <<");
mainButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
new TabFrame();
setVisible(false);
}
});
JButton homeButton=new JButton();
homeButton.setBounds(530,30,70,50);
homeButton.setBackground(Color.yellow);
homeButton.setText("Home");
homeButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
int a=JOptionPane.showConfirmDialog(main,"처음으로 돌아가시겠습니까?","Home",JOptionPane.YES_NO_OPTION);
if(a==0) {
new MainFrame();
setVisible(false);
} else if(a==1){
} else {
}
}
});
main.add(mainButton);
main.add(homeButton);
main.add(mainImage);
setVisible(true);
}
public static void main(String[] args) {
new MainFrame();
}
}
MainFrame.java
package com.tech.semiprj;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
public class TabFrame extends JFrame implements ActionListener{
Container tF=getContentPane();
JPanel tFBackgroundPanel=new JPanel();
JPanel tFTab[]=new JPanel[3];
JLabel tFTabLab[]=new JLabel[3];
JPanel tF1MenuBackgroundPanel=new JPanel();
JPanel tF2MenuBackgroundPanel=new JPanel();
JPanel tF3MenuBackgroundPanel=new JPanel();
JPanel tF1pan[]=new JPanel[8];
JPanel tF2pan[]=new JPanel[8];
JPanel tF3pan[]=new JPanel[8];
JPanel tF1menuPan[]=new JPanel[8];
JPanel tF2menuPan[]=new JPanel[8];
JPanel tF3menuPan[]=new JPanel[8];
JLabel tF1lab[]=new JLabel[8];
JLabel tF2lab[]=new JLabel[8];
JLabel tF3lab[]=new JLabel[8];
JButton tF1btn1[]=new JButton[8];
JButton tF2btn1[]=new JButton[8];
JButton tF3btn1[]=new JButton[8];
JButton tF1btn2[]=new JButton[8];
JButton tF2btn2[]=new JButton[8];
JButton tF3btn2[]=new JButton[8];
static JTextField tF1menuTxt[]=new JTextField[8];
static JTextField tF2menuTxt[]=new JTextField[8];
static JTextField tF3menuTxt[]=new JTextField[8];
String tcat1[]=new String[8];
String tcat2[]=new String[8];
String tcat3[]=new String[8];
JButton homeButton=new JButton();
JButton chooseBtn=new JButton();
JPanel pricePan=new JPanel();
JTextField Price=new JTextField();
Toast toastDB=new Toast();
public TabFrame() {
setTitle("TabFrame");
setSize(640,600);
setDefaultCloseOperation(EXIT_ON_CLOSE);
tF.setLayout(null);
homeButton.setBounds(530,30,70,50);
homeButton.setBackground(Color.yellow);
homeButton.setText("Home");
homeButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
int a=JOptionPane.showConfirmDialog(tF,"처음으로 돌아가시겠습니까?","Home",JOptionPane.YES_NO_OPTION);
if(a==0) {
new MainFrame();
setVisible(false);
} else if(a==1){
} else {
}
}
});
tFBackgroundPanel.setBounds(0,0,640,600);
tFBackgroundPanel.setBackground(Color.DARK_GRAY);
for (int i=0;i<3;i++) {
tFTab[i]=new JPanel(new GridLayout(0,1));
tFTab[i].setSize(100,50);
tFTab[i].setBackground(Color.yellow);
tFTab[i].setLocation(20+120*i, 30);
tFTabLab[i]=new JLabel("Tab"+i,JLabel.CENTER);
tFTab[i].add(tFTabLab[i]);
tF.add(tFTab[i]);
}
tFTabLab[0].setText("기본");
tFTabLab[1].setText("스페셜");
tFTabLab[2].setText("음료");
tF1MenuBackgroundPanel.setLayout(null);
tF1MenuBackgroundPanel.setBounds(20, 90, 580, 360);
tF1MenuBackgroundPanel.setBackground(Color.white);
tF1MenuBackgroundPanel.setVisible(true);
tF2MenuBackgroundPanel.setLayout(null);
tF2MenuBackgroundPanel.setBounds(20, 90, 580, 360);
tF2MenuBackgroundPanel.setBackground(Color.white);
tF2MenuBackgroundPanel.setVisible(false);
tF3MenuBackgroundPanel.setLayout(null);
tF3MenuBackgroundPanel.setBounds(20, 90, 580, 360);
tF3MenuBackgroundPanel.setBackground(Color.white);
tF3MenuBackgroundPanel.setVisible(false);
tFTab[0].addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
if(e.getClickCount()>=1) {
tF1MenuBackgroundPanel.setVisible(true);
tF2MenuBackgroundPanel.setVisible(false);
tF3MenuBackgroundPanel.setVisible(false);
}
repaint();
}
});
tFTab[1].addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
if(e.getClickCount()>=1) {
tF1MenuBackgroundPanel.setVisible(false);
tF2MenuBackgroundPanel.setVisible(true);
tF3MenuBackgroundPanel.setVisible(false);
}
repaint();
}
});
tFTab[2].addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
if(e.getClickCount()>=1) {
tF1MenuBackgroundPanel.setVisible(false);
tF2MenuBackgroundPanel.setVisible(false);
tF3MenuBackgroundPanel.setVisible(true);
}
repaint();
}
});
tcat1[0]=toastDB.menulist.get(1).getTname();
tcat1[1]=toastDB.menulist.get(2).getTname();
tcat1[2]=toastDB.menulist.get(3).getTname();
tcat1[3]=toastDB.menulist.get(4).getTname();
tcat1[4]="준비중";
tcat1[5]="준비중";
tcat1[6]="준비중";
tcat1[7]="준비중";
tcat2[0]=toastDB.menulist.get(5).getTname();
tcat2[1]=toastDB.menulist.get(6).getTname();
tcat2[2]=toastDB.menulist.get(7).getTname();
tcat2[3]=toastDB.menulist.get(8).getTname();
tcat2[4]="준비중";
tcat2[5]="준비중";
tcat2[6]="준비중";
tcat2[7]="준비중";
tcat3[0]=toastDB.menulist.get(9).getTname();
tcat3[1]=toastDB.menulist.get(10).getTname();
tcat3[2]=toastDB.menulist.get(11).getTname();
tcat3[3]=toastDB.menulist.get(12).getTname();
tcat3[4]="준비중";
tcat3[5]="준비중";
tcat3[6]="준비중";
tcat3[7]="준비중";
for(int i=0;i<8;i++) {
tF1pan[i]=new JPanel(new BorderLayout());
tF1pan[i].setBackground(Color.gray);
tF1lab[i]=new JLabel(tcat1[i],JLabel.CENTER);
tF1menuPan[i]=new JPanel(new GridLayout(0,3));
tF1btn1[i]=new JButton("-");
tF1btn2[i]=new JButton("+");
tF1menuTxt[i]=new JTextField();
tF1menuTxt[i].setText("0");
tF1menuTxt[i].setFont(new Font("Gothic",Font.BOLD,15));
tF1menuTxt[i].setHorizontalAlignment(JTextField.CENTER);
tF1menuTxt[i].setEnabled(false);
tF1btn1[i].setForeground(Color.black);
tF1btn1[i].setFont(new Font("Gothic",Font.BOLD,20));
tF1btn1[i].setBackground(Color.yellow);
tF1btn1[i].addActionListener(this);
tF1btn2[i].setForeground(Color.black);
tF1btn2[i].setFont(new Font("Gothic",Font.BOLD,16));
tF1btn2[i].setBackground(Color.yellow);
tF1btn2[i].addActionListener(this);
tF1pan[i].add(tF1lab[i]);
tF1menuPan[i].add(tF1btn1[i]);
tF1menuPan[i].add(tF1menuTxt[i]);
tF1menuPan[i].add(tF1btn2[i]);
tF1pan[i].add(tF1menuPan[i],BorderLayout.SOUTH);
tF1MenuBackgroundPanel.add(tF1pan[i]);
}
for(int i=0;i<4;i++) {
tF1pan[i].setBounds(15+140*i,10,130,165);
tF1pan[i+4].setBounds(15+140*i,185,130,165);
}
for(int i=0;i<8;i++) {
tF2pan[i]=new JPanel(new BorderLayout());
tF2pan[i].setBackground(Color.gray);
tF2lab[i]=new JLabel(tcat2[i],JLabel.CENTER);
tF2menuPan[i]=new JPanel(new GridLayout(0,3));
tF2btn1[i]=new JButton("-");
tF2btn2[i]=new JButton("+");
tF2menuTxt[i]=new JTextField();
tF2menuTxt[i].setText("0");
tF2menuTxt[i].setFont(new Font("Gothic",Font.BOLD,15));
tF2menuTxt[i].setHorizontalAlignment(JTextField.CENTER);
tF2menuTxt[i].setEnabled(false);
tF2btn1[i].setForeground(Color.black);
tF2btn1[i].setFont(new Font("Gothic",Font.BOLD,20));
tF2btn1[i].setBackground(Color.yellow);
tF2btn1[i].addActionListener(this);
tF2btn2[i].setForeground(Color.black);
tF2btn2[i].setFont(new Font("Gothic",Font.BOLD,16));
tF2btn2[i].setBackground(Color.yellow);
tF2btn2[i].addActionListener(this);
tF2pan[i].add(tF2lab[i]);
tF2menuPan[i].add(tF2btn1[i]);
tF2menuPan[i].add(tF2menuTxt[i]);
tF2menuPan[i].add(tF2btn2[i]);
tF2pan[i].add(tF2menuPan[i],BorderLayout.SOUTH);
tF2MenuBackgroundPanel.add(tF2pan[i]);
}
for(int i=0;i<4;i++) {
tF2pan[i].setBounds(15+140*i,10,130,165);
tF2pan[i+4].setBounds(15+140*i,185,130,165);
}
for(int i=0;i<8;i++) {
tF3pan[i]=new JPanel(new BorderLayout());
tF3pan[i].setBackground(Color.gray);
tF3lab[i]=new JLabel(tcat3[i],JLabel.CENTER);
tF3menuPan[i]=new JPanel(new GridLayout(0,3));
tF3btn1[i]=new JButton("-");
tF3btn2[i]=new JButton("+");
tF3menuTxt[i]=new JTextField();
tF3menuTxt[i].setText("0");
tF3menuTxt[i].setFont(new Font("Gothic",Font.BOLD,15));
tF3menuTxt[i].setHorizontalAlignment(JTextField.CENTER);
tF3menuTxt[i].setEnabled(false);
tF3btn1[i].setForeground(Color.black);
tF3btn1[i].setFont(new Font("Gothic",Font.BOLD,20));
tF3btn1[i].setBackground(Color.yellow);
tF3btn1[i].addActionListener(this);
tF3btn2[i].setForeground(Color.black);
tF3btn2[i].setFont(new Font("Gothic",Font.BOLD,16));
tF3btn2[i].setBackground(Color.yellow);
tF3btn2[i].addActionListener(this);
tF3pan[i].add(tF3lab[i]);
tF3menuPan[i].add(tF3btn1[i]);
tF3menuPan[i].add(tF3menuTxt[i]);
tF3menuPan[i].add(tF3btn2[i]);
tF3pan[i].add(tF3menuPan[i],BorderLayout.SOUTH);
tF3MenuBackgroundPanel.add(tF3pan[i]);
}
for(int i=0;i<4;i++) {
tF3pan[i].setBounds(15+140*i,10,130,165);
tF3pan[i+4].setBounds(15+140*i,185,130,165);
}
pricePan.setLayout(new BorderLayout());
pricePan.setBounds(20, 460, 570, 90);
pricePan.setBackground(Color.pink);
Price.setText("모든 메뉴를 고른 후 '담기' 버튼을 눌러주세요");
Price.setFont(new Font("Gothic",Font.BOLD,20));
Price.setHorizontalAlignment(JTextField.CENTER);
Price.setBackground(Color.blue);
Price.setEnabled(false);
chooseBtn.setText("담기");
chooseBtn.setFont(new Font("Gothic",Font.BOLD,30));
chooseBtn.setForeground(Color.white);
chooseBtn.setBackground(Color.DARK_GRAY);
chooseBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
int a=JOptionPane.showConfirmDialog(tF,"모두 고르셨나요?","Choose",JOptionPane.YES_NO_OPTION);
if(a==0) {
new OrderFrame();
setVisible(false);
} else if(a==1){
} else {
}
}
});
pricePan.add(Price);
pricePan.add(chooseBtn,"East");
tF.add(homeButton);
tF.add(pricePan);
tF.add(tF1MenuBackgroundPanel);
tF.add(tF2MenuBackgroundPanel);
tF.add(tF3MenuBackgroundPanel);
tF.add(tFBackgroundPanel);
setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
if(tF1btn1[0].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[0].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF1menuTxt[0].setText(menuCnt0);
}
if (tF1btn2[0].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[0].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF1menuTxt[0].setText(menuCnt0);
}
if(tF1btn1[1].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[1].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF1menuTxt[1].setText(menuCnt0);
}
if (tF1btn2[1].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[1].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF1menuTxt[1].setText(menuCnt0);
}
if(tF1btn1[2].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[2].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF1menuTxt[2].setText(menuCnt0);
}
if (tF1btn2[2].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[2].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF1menuTxt[2].setText(menuCnt0);
}
if(tF1btn1[3].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[3].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF1menuTxt[3].setText(menuCnt0);
}
if (tF1btn2[3].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[3].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF1menuTxt[3].setText(menuCnt0);
}
if(tF1btn1[4].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[4].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF1menuTxt[4].setText(menuCnt0);
}
if (tF1btn2[4].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[4].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF1menuTxt[4].setText(menuCnt0);
}
if(tF1btn1[5].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[5].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF1menuTxt[5].setText(menuCnt0);
}
if (tF1btn2[5].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[5].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF1menuTxt[5].setText(menuCnt0);
}
if(tF1btn1[6].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[6].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF1menuTxt[6].setText(menuCnt0);
}
if (tF1btn2[6].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[6].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF1menuTxt[6].setText(menuCnt0);
}
if(tF1btn1[7].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[7].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF1menuTxt[7].setText(menuCnt0);
}
if (tF1btn2[7].equals(e.getSource())) {
String menuCnt0=tF1menuTxt[7].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF1menuTxt[7].setText(menuCnt0);
}
if(tF2btn1[0].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[0].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF2menuTxt[0].setText(menuCnt0);
}
if (tF2btn2[0].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[0].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF2menuTxt[0].setText(menuCnt0);
}
if(tF2btn1[1].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[1].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF2menuTxt[1].setText(menuCnt0);
}
if (tF2btn2[1].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[1].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF2menuTxt[1].setText(menuCnt0);
}
if(tF2btn1[2].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[2].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF2menuTxt[2].setText(menuCnt0);
}
if (tF2btn2[2].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[2].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF2menuTxt[2].setText(menuCnt0);
}
if(tF2btn1[3].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[3].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF2menuTxt[3].setText(menuCnt0);
}
if (tF2btn2[3].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[3].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF2menuTxt[3].setText(menuCnt0);
}
if(tF2btn1[4].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[4].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF2menuTxt[4].setText(menuCnt0);
}
if (tF2btn2[4].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[4].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF2menuTxt[4].setText(menuCnt0);
}
if(tF2btn1[5].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[5].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF2menuTxt[5].setText(menuCnt0);
}
if (tF2btn2[5].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[5].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF2menuTxt[5].setText(menuCnt0);
}
if(tF2btn1[6].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[6].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF2menuTxt[6].setText(menuCnt0);
}
if (tF2btn2[6].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[6].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF2menuTxt[6].setText(menuCnt0);
}
if(tF2btn1[7].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[7].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF2menuTxt[7].setText(menuCnt0);
}
if (tF2btn2[7].equals(e.getSource())) {
String menuCnt0=tF2menuTxt[7].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF2menuTxt[7].setText(menuCnt0);
}
if(tF3btn1[0].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[0].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF3menuTxt[0].setText(menuCnt0);
}
if (tF3btn2[0].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[0].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF3menuTxt[0].setText(menuCnt0);
}
if(tF3btn1[1].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[1].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF3menuTxt[1].setText(menuCnt0);
}
if (tF3btn2[1].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[1].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF3menuTxt[1].setText(menuCnt0);
}
if(tF3btn1[2].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[2].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF3menuTxt[2].setText(menuCnt0);
}
if (tF3btn2[2].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[2].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF3menuTxt[2].setText(menuCnt0);
}
if(tF3btn1[3].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[3].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF3menuTxt[3].setText(menuCnt0);
}
if (tF3btn2[3].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[3].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF3menuTxt[3].setText(menuCnt0);
}
if(tF3btn1[4].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[4].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF3menuTxt[4].setText(menuCnt0);
}
if (tF3btn2[4].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[4].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF3menuTxt[4].setText(menuCnt0);
}
if(tF3btn1[5].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[5].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF3menuTxt[5].setText(menuCnt0);
}
if (tF3btn2[5].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[5].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF3menuTxt[5].setText(menuCnt0);
}
if(tF3btn1[6].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[6].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF3menuTxt[6].setText(menuCnt0);
}
if (tF3btn2[6].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[6].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF3menuTxt[6].setText(menuCnt0);
}
if(tF3btn1[7].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[7].getText();
int num0=Integer.parseInt(menuCnt0);
num0--;
menuCnt0=String.valueOf(num0);
tF3menuTxt[7].setText(menuCnt0);
}
if (tF3btn2[7].equals(e.getSource())) {
String menuCnt0=tF3menuTxt[7].getText();
int num0=Integer.parseInt(menuCnt0);
num0++;
menuCnt0=String.valueOf(num0);
tF3menuTxt[7].setText(menuCnt0);
}
}
public static void main(String[] args) {
new TabFrame();
}
}
TabFrame.java
package com.tech.semiprj;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.ScrollPaneConstants;
import javax.swing.SwingConstants;
public class OrderFrame extends JFrame{
Container orderFrame=getContentPane();
JButton homeButton=new JButton();
JPanel titlePanel=new JPanel();
JLabel titleLabel=new JLabel();
JPanel oFBackgroundPanel=new JPanel();
JPanel oFShoppingCart=new JPanel();
JLabel oFSCLabel=new JLabel();
JTextArea oFSCPrice=new JTextArea();
JScrollPane oFScrollPane;
JPanel oFPrice=new JPanel();
JLabel oFPrcLabel=new JLabel();
JTextField Price=new JTextField();
JButton oFpaybtn=new JButton();
Toast toastDB=new Toast();
static int choosecnt[]=new int[12];
int pricecnt[]=new int[12];
static String menulist[]=new String[12];
String result="";
static int sum=0;
public OrderFrame() {
setTitle("OrderFrame");
setSize(640,600);
setDefaultCloseOperation(EXIT_ON_CLOSE);
orderFrame.setLayout(null);
homeButton.setBounds(530,30,70,50);
homeButton.setBackground(Color.yellow);
homeButton.setText("Home");
homeButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
int a=JOptionPane.showConfirmDialog(orderFrame,"처음으로 돌아가시겠습니까?","Home",JOptionPane.YES_NO_OPTION);
if(a==0) {
new MainFrame();
setVisible(false);
} else if(a==1){
} else {
}
}
});
oFBackgroundPanel.setSize(640,600);
oFBackgroundPanel.setLocation(0,0);
oFBackgroundPanel.setBackground(Color.DARK_GRAY);
titlePanel.setLayout(new BorderLayout());
titlePanel.setBounds(20, 30, 500, 50);
titlePanel.setBackground(Color.orange);
titleLabel.setText("주문 확인");
titleLabel.setFont(new Font("Gothic",Font.BOLD,20));
titleLabel.setHorizontalAlignment(SwingConstants.CENTER);
titlePanel.add(titleLabel,"Center");
oFShoppingCart.setLayout(new BorderLayout());
oFShoppingCart.setBounds(20, 90, 580, 260);
oFShoppingCart.setBackground(Color.LIGHT_GRAY);
oFSCLabel.setText(" ☞ 담은 상품");
oFSCLabel.setFont(new Font("Gothic",Font.BOLD,20));
oFShoppingCart.add(oFSCLabel,"North");
for (int i=0;i<12;i++) {
menulist[i]=toastDB.menulist.get(i+1).getTname();
}
choosecnt[0]=Integer.parseInt(TabFrame.tF1menuTxt[0].getText());
choosecnt[1]=Integer.parseInt(TabFrame.tF1menuTxt[1].getText());
choosecnt[2]=Integer.parseInt(TabFrame.tF1menuTxt[2].getText());
choosecnt[3]=Integer.parseInt(TabFrame.tF1menuTxt[3].getText());
choosecnt[4]=Integer.parseInt(TabFrame.tF2menuTxt[0].getText());
choosecnt[5]=Integer.parseInt(TabFrame.tF2menuTxt[1].getText());
choosecnt[6]=Integer.parseInt(TabFrame.tF2menuTxt[2].getText());
choosecnt[7]=Integer.parseInt(TabFrame.tF2menuTxt[3].getText());
choosecnt[8]=Integer.parseInt(TabFrame.tF3menuTxt[0].getText());
choosecnt[9]=Integer.parseInt(TabFrame.tF3menuTxt[1].getText());
choosecnt[10]=Integer.parseInt(TabFrame.tF3menuTxt[2].getText());
choosecnt[11]=Integer.parseInt(TabFrame.tF3menuTxt[3].getText());
for (int i=0;i<12;i++) {
pricecnt[i]=choosecnt[i]*(toastDB.menulist.get(i+1).getTprice());
}
oFSCPrice.setText(" "+result);
oFSCPrice.setFont(new Font("Gothic",Font.BOLD,20));
oFSCPrice.setEnabled(false);
oFScrollPane=new JScrollPane(oFSCPrice,ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
if(choosecnt[0]>0) {
result=menulist[0]+" "+choosecnt[0]+"개"+" "+pricecnt[0]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[1]>0) {
result=menulist[1]+" "+choosecnt[1]+"개"+" "+pricecnt[1]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[2]>0) {
result=menulist[2]+" "+choosecnt[2]+"개"+" "+pricecnt[2]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[3]>0) {
result=menulist[3]+" "+choosecnt[3]+"개"+" "+pricecnt[3]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[4]>0) {
result=menulist[4]+" "+choosecnt[4]+"개"+" "+pricecnt[4]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[5]>0) {
result=menulist[5]+" "+choosecnt[5]+"개"+" "+pricecnt[5]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[6]>0) {
result=menulist[6]+" "+choosecnt[6]+"개"+" "+pricecnt[6]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[7]>0) {
result=menulist[7]+" "+choosecnt[7]+"개"+" "+pricecnt[7]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[8]>0) {
result=menulist[8]+" "+choosecnt[8]+"개"+" "+pricecnt[8]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[9]>0) {
result=menulist[9]+" "+choosecnt[9]+"개"+" "+pricecnt[9]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[10]>0) {
result=menulist[10]+" "+choosecnt[10]+"개"+" "+pricecnt[10]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
if(choosecnt[11]>0) {
result=menulist[11]+" "+choosecnt[11]+"개"+" "+pricecnt[11]+" 원";
oFSCPrice.setText(oFSCPrice.getText()+"\n"+result);
}
oFShoppingCart.add(oFScrollPane,"Center");
oFPrice.setLayout(new BorderLayout());
oFPrice.setBounds(20, 360, 580, 180);
oFPrice.setBackground(Color.pink);
oFPrcLabel.setText(" ▼ 총액");
oFPrcLabel.setFont(new Font("Gothic",Font.BOLD,20));
oFPrice.add(oFPrcLabel,"North");
for(int i=0;i<12;i++) {
sum+=pricecnt[i];
}
Price.setText(" "+sum+" 원");
Price.setFont(new Font("Gothic",Font.BOLD,20));
Price.setEnabled(false);
oFPrice.add(Price,"Center");
oFpaybtn.setText("결제");
oFpaybtn.setFont(new Font("Gothic",Font.BOLD,30));
oFpaybtn.setForeground(Color.white);
oFpaybtn.setBackground(Color.DARK_GRAY);
oFpaybtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
new PaymentFrame();
setVisible(false);
}
});
oFPrice.add(oFpaybtn,"East");
orderFrame.add(homeButton);
orderFrame.add(titlePanel);
orderFrame.add(oFShoppingCart);
orderFrame.add(oFPrice);
orderFrame.add(oFBackgroundPanel);
setVisible(true);
}
public static void main(String[] args) {
new OrderFrame();
}
}
OrderFrame.java
package com.tech.semiprj;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
public class PaymentFrame extends JFrame{
JLabel[] paymentLab= new JLabel[3];
JLabel[] checkLabel=new JLabel[3];
JButton[] paymentBtn= new JButton[3];
Container payFrame=getContentPane();
JButton homeButton=new JButton();
JPanel titlePanel=new JPanel();
JLabel titleLabel=new JLabel();
JPanel pFBackgroundPanel=new JPanel();
JPanel pFchoosePayment=new JPanel();
JPanel pFPrice=new JPanel();
JLabel pFPrcLabel=new JLabel();
JTextField Price=new JTextField();
JButton pFpaybtn=new JButton();
Toast toastDB=new Toast();
public boolean flag=true;
public PaymentFrame() {
setTitle("PaymentFrame");
setSize(640,600);
setDefaultCloseOperation(EXIT_ON_CLOSE);
payFrame.setLayout(null);
homeButton.setBounds(530,30,70,50);
homeButton.setBackground(Color.yellow);
homeButton.setText("Home");
homeButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
int a=JOptionPane.showConfirmDialog(payFrame,"처음으로 돌아가시겠습니까?","Home",JOptionPane.YES_NO_OPTION);
if(a==0) {
new MainFrame();
setVisible(false);
} else if(a==1){
} else {
}
}
});
pFBackgroundPanel.setSize(640,600);
pFBackgroundPanel.setLocation(0,0);
pFBackgroundPanel.setBackground(Color.DARK_GRAY);
titlePanel.setLayout(new BorderLayout());
titlePanel.setBounds(20, 30, 500, 50);
titlePanel.setBackground(Color.orange);
titleLabel.setText("결제 종류 선택");
titleLabel.setFont(new Font("Gothic",Font.BOLD,20));
titleLabel.setHorizontalAlignment(SwingConstants.CENTER);
titlePanel.add(titleLabel,"Center");
pFchoosePayment.setLayout(null);
pFchoosePayment.setBounds(20, 90, 580, 260);
pFchoosePayment.setBackground(Color.yellow);
for(int i=0;i<3;i++) {
paymentLab[i]=new JLabel();
paymentLab[i].setFont(new Font("Gothic",Font.BOLD,20));
paymentLab[i].setHorizontalAlignment(SwingConstants.CENTER);
paymentLab[i].setBounds(10+190*i, 50, 180, 50);
checkLabel[i]=new JLabel(new ImageIcon("checkicon.png"));
checkLabel[i].setBounds(10+190*i,60,180,100);
checkLabel[i].setVisible(false);
pFchoosePayment.add(checkLabel[i]);
paymentBtn[i]=new JButton();
paymentBtn[i].setBounds(10+190*i,180,180,50);
paymentBtn[i].setFont(new Font("Gothic",Font.BOLD,30));
paymentBtn[i].setForeground(Color.white);
paymentBtn[i].setBackground(Color.DARK_GRAY);
pFchoosePayment.add(paymentLab[i]);
pFchoosePayment.add(paymentBtn[i]);
}
paymentLab[0].setText("신용카드");
paymentLab[1].setText("현금");
paymentLab[2].setText("삼성PAY");
paymentBtn[0].setText("신용카드");
paymentBtn[1].setText("현금");
paymentBtn[2].setText("삼성PAY");
paymentBtn[0].addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(flag) {
checkLabel[0].setVisible(true);
flag=false;
} else {
checkLabel[0].setVisible(false);
flag=true;
}
}
});
paymentBtn[1].addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(flag) {
checkLabel[1].setVisible(true);
flag=false;
} else {
checkLabel[1].setVisible(false);
flag=true;
}
}
});
paymentBtn[2].addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(flag) {
checkLabel[2].setVisible(true);
flag=false;
} else {
checkLabel[2].setVisible(false);
flag=true;
}
}
});
pFPrice.setLayout(new BorderLayout());
pFPrice.setBounds(20, 360, 580, 180);
pFPrice.setBackground(Color.pink);
pFPrcLabel.setText(" ▼ 총액");
pFPrcLabel.setFont(new Font("Gothic",Font.BOLD,20));
pFPrice.add(pFPrcLabel,"North");
Price.setText(" "+OrderFrame.sum+" 원");
Price.setFont(new Font("Gothic",Font.BOLD,20));
Price.setEnabled(false);
pFPrice.add(Price,"Center");
pFpaybtn.setText("결제");
pFpaybtn.setFont(new Font("Gothic",Font.BOLD,30));
pFpaybtn.setForeground(Color.white);
pFpaybtn.setBackground(Color.DARK_GRAY);
pFpaybtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int a=JOptionPane.showConfirmDialog(payFrame,"결제하시겠습니까?","결제확인",JOptionPane.YES_NO_OPTION);
if(a==0) {
JOptionPane.showMessageDialog(payFrame, "결제가 완료되었습니다.","결제완료",JOptionPane.PLAIN_MESSAGE);
new ByeFrame();
setVisible(false);
Connection con=ToastDB.ToastDBConnection();
String sql="update toast set tcnt = ? where tname = ?";
String sql2="select * from toast";
int cnt[]=new int[12];
try {
for(int i=0;i<12;i++) {
PreparedStatement pstmt=con.prepareStatement(sql);
cnt[i]=(toastDB.menulist.get(i+1).getTcnt())-(OrderFrame.choosecnt[i]);
pstmt.setInt(1, cnt[i]);
pstmt.setString(2, OrderFrame.menulist[i]);
ResultSet rs=pstmt.executeQuery();
}
PreparedStatement pstmt2=con.prepareStatement(sql2);
ResultSet rs2=pstmt2.executeQuery();
while(rs2.next()) {
System.out.println("No : "+rs2.getInt("Tno")+" / "
+"분류 : "+rs2.getString("Tcat")+" / "
+"이름 : "+rs2.getString("Tname")+" / "
+"수량 : "+rs2.getInt("Tcnt")+" / "
+"가격 : "+rs2.getInt("Tprice"));
}
} catch (SQLException e1) {};
} else if(a==1){
} else {
}
}
});
pFPrice.add(pFpaybtn,"East");
payFrame.add(homeButton);
payFrame.add(titlePanel);
payFrame.add(pFchoosePayment);
payFrame.add(pFPrice);
payFrame.add(pFBackgroundPanel);
setVisible(true);
}
public static void main(String[] args) {
new PaymentFrame();
}
}
PaymentFrame.java
package com.tech.semiprj;
import java.awt.Color;
import java.awt.Container;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.Timer;
public class ByeFrame extends JFrame {
public ByeFrame() {
setTitle("ByeFrame");
setSize(640,600);
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container bye=getContentPane();
bye.setLayout(null);
JPanel byePanel=new JPanel();
byePanel.setSize(640,600);
byePanel.setLocation(0,0);
byePanel.setBackground(Color.orange);
JButton byeButton=new JButton();
byeButton.setSize(600,100);
byeButton.setLocation(10,300);
byeButton.setBackground(Color.red);
byeButton.setForeground(Color.yellow);
byeButton.setFont(new Font("Gothic",Font.BOLD,30));
byeButton.setText("이용해 주셔서 감사합니다.");
byeButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
new MainFrame();
setVisible(false);
}
});
bye.add(byePanel);
bye.add(byeButton);
setVisible(true);
}
public static void main(String[] args) {
new ByeFrame();
}
}
ByeFrame.java
DB
구동영상