import javax.swing.*;

import java.awt.*;
import java.awt.event.*;
import java.sql.Time;

class Rectangle {
 int x, y, w, h;
}

public class DDGFrame extends JFrame implements MouseListener, ActionListener  {

 JPanel textPanel;
 JTextField timeText;
 JTextField countText;
 MyPanel stagePanel;
 JButton startButton;
 
 Time startTime;
 Time currentTime;
 int count = 0;
 Rectangle r;

 class MyPanel extends JPanel {
  public void paintComponent(Graphics g) {
   super.paintComponents(g);
   if(count > 0)
    g.drawRect(r.x, r.y, r.w, r.h);
  }
 }

 
 public DDGFrame() {
  setTitle("두더지잡기");
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setVisible(true);
  setLayout(new BorderLayout(10, 10));
  
  r = new Rectangle();
  
  textPanel = new JPanel();
  timeText = new JTextField();
  countText = new JTextField("" + count);
  textPanel.setLayout(new GridLayout(0, 2));
  textPanel.add(timeText);
  textPanel.add(countText);
  
  stagePanel = new MyPanel();
  stagePanel.setSize(500, 500);
  stagePanel.setBorder(BorderFactory.createLineBorder(Color.BLACK, 2));
  stagePanel.addMouseListener(this);
  
  startButton = new JButton("Start");
  startButton.addActionListener(this);
  
  add(textPanel, BorderLayout.NORTH);
  add(stagePanel, BorderLayout.CENTER);
  add(startButton, BorderLayout.SOUTH);

  setSize(500, 600);
 }
 
 public static void main(String[] args) {
  DDGFrame f = new DDGFrame();
 }
 

 @Override
 public void actionPerformed(ActionEvent arg0) {
  startButton.setEnabled(false);
  count = 10;
  countText.setText("" + count);
  
  r.x = (int) (Math.random()*500);
  r.y = (int) (Math.random()*500);
  r.w = 10;
  r.h = 10;
  
  repaint();
 }

 @Override
 public void mouseClicked(MouseEvent e) {
  if(count > 0)
   count--;
  countText.setText("" + count);

  r.x = (int) (Math.random()*500);
  r.y = (int) (Math.random()*500);
  r.w = 10;
  r.h = 10;
  
  repaint();
  
  if(count == 0) {
   startButton.setEnabled(true);
  }
  
 }

 @Override
 public void mouseEntered(MouseEvent e) {
  // TODO Auto-generated method stub
  
 }

 @Override
 public void mouseExited(MouseEvent e) {
  // TODO Auto-generated method stub
  
 }

 @Override
 public void mousePressed(MouseEvent e) {
  // TODO Auto-generated method stub
  
 }

 @Override
 public void mouseReleased(MouseEvent e) {
  // TODO Auto-generated method stub
  
 }
}

 

'프로그래밍언어 > JAVA' 카테고리의 다른 글

JAVA PPT 23-25  (0) 2014.07.25
JAVA 강의자료 19-22장  (0) 2014.07.23
계산기 프로그램 작성  (0) 2014.07.21
java 프로그램 소스  (0) 2014.07.14
JAVA 강의자료 5-6일차  (0) 2014.07.11

 

Calc.rar

 

 

import javax.swing.*;

import java.awt.*;
import java.awt.event.*;

public class CalcFrame extends JFrame implements ActionListener, KeyListener {
 JTextField text;
 JPanel buttonPanel;
 JButton numButton[] = new JButton[10];
 JButton dotButton, equalButton;
 JButton plusButton, minusButton, mulButton, divButton;
 JButton clearButton;
 String s = "";
 double result = 0;
 double num = 0;
 char operator;
 
 public CalcFrame() {
  setTitle("계산기");
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setVisible(true);
  setLayout(new BorderLayout());
  
  text = new JTextField("0");
  text.setEditable(false);
  buttonPanel = new JPanel();
  buttonPanel.setLayout(new GridLayout(0, 4));
  
  for(int i=0; i<10; i++) {
   numButton[i] = new JButton("" + i);
   numButton[i].addActionListener(this);
  }
  
  dotButton = new JButton(".");
  equalButton = new JButton("=");
  plusButton = new JButton("+");
  minusButton= new JButton("-");
  mulButton = new JButton("*");
  divButton = new JButton("/");
  dotButton.addActionListener(this);
  equalButton.addActionListener(this);
  plusButton.addActionListener(this);
  minusButton.addActionListener(this);
  mulButton.addActionListener(this);
  divButton.addActionListener(this);
  
  buttonPanel.add(numButton[1]);
  buttonPanel.add(numButton[2]);
  buttonPanel.add(numButton[3]);
  buttonPanel.add(plusButton);
  buttonPanel.add(numButton[4]);
  buttonPanel.add(numButton[5]);
  buttonPanel.add(numButton[6]);
  buttonPanel.add(minusButton);
  buttonPanel.add(numButton[7]);
  buttonPanel.add(numButton[8]);
  buttonPanel.add(numButton[9]);
  buttonPanel.add(mulButton);
  buttonPanel.add(dotButton);
  buttonPanel.add(numButton[0]);
  buttonPanel.add(equalButton);
  buttonPanel.add(divButton);
  
  clearButton = new JButton("Clear");
  clearButton.addActionListener(this);
  
  add(text, BorderLayout.NORTH);
  add(buttonPanel, BorderLayout.CENTER);
  add(clearButton, BorderLayout.SOUTH);
  
  addKeyListener(this);
  pack();
  
 }
 public void actionPerformed(ActionEvent e) {
  JButton button = (JButton) e.getSource();
  
  for(int i=0; i<10; i++) {
   if(button == numButton[i]) {
    s += i;
    text.setText(s);
   }
  }
  if(button == dotButton) {
   s += ".";
   text.setText(s);
  }
  else if(button == clearButton) {
   s = "";
   result = 0;
   num = 0;
   operator = 0;
   text.setText("0");
  } else if(button == plusButton) {
   result = Double.parseDouble(text.getText());
   text.setText("0");
   s = "";
   operator = '+';
   System.out.println(result);
  } else if(button == minusButton) {
   result = Double.parseDouble(text.getText());
   text.setText("0");
   s = "";
   operator = '-';
   System.out.println(result);
  } else if(button == mulButton) {
   result = Double.parseDouble(text.getText());
   text.setText("0");
   s = "";
   operator = '*';
   System.out.println(result);
  } else if(button == divButton) {
   result = Double.parseDouble(text.getText());
   text.setText("0");
   s = "";
   operator = '/';
   System.out.println(result);
  } else if(button == equalButton) {
   if(num == 0)
    num = Double.parseDouble(text.getText());
   switch(operator) {
   case '+':
    result += num;
    break;
   case '-':
    result -= num;
    break;
   case '*':
    result *= num;
    break;
   case '/':
    result /= num;
    break;
   }
   text.setText("" + result);
   s = "";
  }
 }
 
 public static void main(String[] args) {
  CalcFrame f = new CalcFrame();
 }
 @Override
 public void keyPressed(KeyEvent e) {
  char ch = e.getKeyChar();
  
  if(e.getKeyCode() == KeyEvent.VK_ESCAPE) {
   s = "";
   result = 0;
   num = 0;
   operator = 0;
   text.setText("0");
  }
  
  for(int i=0; i<10; i++) {
   if(ch == '0' + i) {
    s += i;
    text.setText(s);
   }
  }
  if(ch == '.') {
   s += ".";
   text.setText(s);
  }
  else if(ch == '+') {
   result = Double.parseDouble(text.getText());
   text.setText("0");
   s = "";
   operator = '+';
   System.out.println(result);
  }
  else if(ch == '-') {
   result = Double.parseDouble(text.getText());
   text.setText("0");
   s = "";
   operator = '-';
   System.out.println(result);
  } else if(ch == '*') {
   result = Double.parseDouble(text.getText());
   text.setText("0");
   s = "";
   operator = '*';
   System.out.println(result);
  } else if(ch == '/') {
   result = Double.parseDouble(text.getText());
   text.setText("0");
   s = "";
   operator = '/';
   System.out.println(result);
  } else if(ch == '=') {
   if(num == 0)
    num = Double.parseDouble(text.getText());
   switch(operator) {
   case '+':
    result += num;
    break;
   case '-':
    result -= num;
    break;
   case '*':
    result *= num;
    break;
   case '/':
    result /= num;
    break;
   }
   text.setText("" + result);
   s = "";
  }
 }
 @Override
 public void keyReleased(KeyEvent e) {
  // TODO Auto-generated method stub
  
 }
 @Override
 public void keyTyped(KeyEvent e) {
  // TODO Auto-generated method stub
  
 }
}

 

'프로그래밍언어 > JAVA' 카테고리의 다른 글

JAVA 강의자료 19-22장  (0) 2014.07.23
게임 예제  (0) 2014.07.22
java 프로그램 소스  (0) 2014.07.14
JAVA 강의자료 5-6일차  (0) 2014.07.11
JAVA 강의자료 3-4일차  (0) 2014.07.10

https://www.dropbox.com/s/r8lz7o45whrhsre/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8%20%EC%86%8C%EC%8A%A4.rar

'프로그래밍언어 > JAVA' 카테고리의 다른 글

게임 예제  (0) 2014.07.22
계산기 프로그램 작성  (0) 2014.07.21
JAVA 강의자료 5-6일차  (0) 2014.07.11
JAVA 강의자료 3-4일차  (0) 2014.07.10
배열  (0) 2014.07.10

1차원 배열

 

import java.util.*;

public class Hello {
 public static void main(String[] args) {
  final int STUDENTS = 5;
  int total = 0;
  Scanner scan = new Scanner(System.in);
  int[] scores = new int[STUDENTS];
  
  for(int i=0; i < STUDENTS; i++) {
   System.out.print("성적을 입력하시오:");
   scores[i] = scan.nextInt();
  }
  for(int i=0; i<STUDENTS; i++)
   total += scores[i];
  System.out.println("평균 성적은 " + total/STUDENTS + "입니다.");
 }

 

'프로그래밍언어 > JAVA' 카테고리의 다른 글

JAVA 강의자료 5-6일차  (0) 2014.07.11
JAVA 강의자료 3-4일차  (0) 2014.07.10
JAVA 클래스 예제  (0) 2014.07.09
JAVA 강의자료 2일차  (0) 2014.07.08
JAVA 강의자료 1주차  (0) 2014.07.07

 

class Time {
 private int hour;
 private int minute;
 private int second;
 
 public Time(){
  this(0,0,0);
 }
 
 public Time(int h, int m, int s) {
  setTime(h, m, s);
 }
 
 public void setTime(int h, int m, int s) {
  hour = ((h >= 0 && h < 24) ? h : 0);
  minute = ((m >= 0 && m < 60) ? m : 0);
  second = ((s >= 0 && s < 60) ? s : 0);
 }
 
 public String toString() {
  return String.format("%02d:%02d:%02d", hour, minute, second);
 }
}

public class Hello {
 public static void main(String[] args) {
  Time time = new Time();
  
  System.out.print("기본 생성자 호출 후 시간: ");
  System.out.println(time.toString());
  
  Time time2 = new Time(13, 27, 6);
  System.out.print("두번째 생성자 호출 후 시간: ");
  System.out.println(time2.toString());
  
  Time time3 = new Time(99, 66, 77);
  System.out.print("올바르지 않은 시간 설정 후 시간 : ");
  System.out.println(time3.toString());
  
 }

 

'프로그래밍언어 > JAVA' 카테고리의 다른 글

JAVA 강의자료 3-4일차  (0) 2014.07.10
배열  (0) 2014.07.10
JAVA 강의자료 2일차  (0) 2014.07.08
JAVA 강의자료 1주차  (0) 2014.07.07
자바 강의자료 비밀번호  (0) 2014.07.07

+ Recent posts