위와 같은 간단한 프로그램을 만들어 봤습니다.

swing기초를 배우신 분들은 영상과 같이 실행되는 프로그램을 짜본다면 도움이 많이 될 것입니다.

소스코드는 아래를 참조해주세요.

package question03;


import javax.swing.*;

import java.awt.*;

import java.awt.event.*;


public class LSample extends JFrame {

//추첨번호

JLabel l1; JLabel l2; JLabel l3; JLabel l4;

JLabel l5; JLabel l6; JLabel l7;

JLabel lb;//몇회차

//도전번호

JLabel num1; JLabel num2; JLabel num3; JLabel num4; 

JLabel num5; JLabel num6; JLabel num7; 

JLabel temp;//등수상태

//현재상태정보

JLabel stat; JLabel stat1; JLabel stat2; JLabel stat3;

JLabel stat4; JLabel stat5; JLabel stat6; JLabel stat7; JLabel stat8; 

int lotto[];

int mynum[];

int result[];

int count;

int inning;

int challenge;

String word;

LSample(){

result=new int[8];

setSize(500,450);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setVisible(true);

setLayout(null);

//seungmin

lb = new JLabel("제"+Integer.toString(inning)+"회");

lb.setSize(150,30);

lb.setForeground(Color.red);

lb.setLocation(10,10);//

add(lb);

JLabel lb2=new JLabel("로또 추첨");

lb2.setSize(150,30);

lb2.setLocation(150,10);

add(lb2);

JLabel l=new JLabel("추첨번호");

l.setSize(150,30);

l.setLocation(10,40);

add(l);

//추첨번호

l1=new JLabel("0");

l1.setSize(30,30);

l1.setLocation(100,40);

add(l1);

l2=new JLabel("0");

l2.setSize(30,30);

l2.setLocation(130,40);

add(l2);

l3=new JLabel("0");

l3.setSize(30,30);

l3.setLocation(160,40);

add(l3);

l4=new JLabel("0");

l4.setSize(30,30);

l4.setLocation(190,40);

add(l4);

l5=new JLabel("0");

l5.setLocation(220,40);

l5.setSize(30,30);

add(l5);

l6=new JLabel("0");

l6.setLocation(250,40);

l6.setSize(30,30);

add(l6);

l7=new JLabel("0");

l7.setLocation(270,40);

l7.setSize(30,30);

add(l7);

//추첨버튼

JButton b1=new JButton("번호 세팅");

b1.addMouseListener(new Listen_Lotto());

b1.setSize(100,30);

b1.setBackground(Color.blue);

b1.setForeground(Color.white);

b1.setLocation(350,40);

add(b1);

//도전버튼

JButton b2=new JButton("도전 실행");

b2.addMouseListener(new Listen_mynum());

b2.setSize(100,30);

b2.setBackground(Color.blue);

b2.setForeground(Color.white);

b2.setLocation(10,90);

add(b2);

//도전번호

num1=new JLabel("0");

num1.setLocation(130,90);

num1.setSize(30,30);

add(num1);

num2=new JLabel("0");

num2.setLocation(150,90);

num2.setSize(30,30);

add(num2);

num3=new JLabel("0");

num3.setLocation(170,90);

num3.setSize(30,30);

add(num3);

num4=new JLabel("0");

num4.setLocation(190,90);

num4.setSize(30,30);

add(num4);

num5=new JLabel("0");

num5.setLocation(210,90);

num5.setSize(30,30);

add(num5);

num6=new JLabel("0");

num6.setLocation(230,90);

num6.setSize(30,30);

add(num6);

num7=new JLabel("0");

num7.setLocation(250,90);

num7.setSize(30,30);

add(num7);

//도전결과

JLabel lb3=new JLabel("도전 결과:");

lb3.setSize(150,30);

lb3.setLocation(280,90);

add(lb3);

//seungmin

temp=new JLabel(word);

temp.setSize(100,30);

temp.setLocation(350,90);

add(temp);

//현재상태부분

JLabel lb4=new JLabel("★현재의 도전 상황★");

lb4.setSize(200,30);

lb4.setLocation(70,130);

add(lb4);

JLabel lb5=new JLabel("-총 도전횟수");

lb5.setSize(200,30);

lb5.setLocation(70,150);

add(lb5);

stat=new JLabel(Integer.toString(challenge)+"회");

stat.setSize(70,30);

stat.setLocation(150,150);

add(stat);

JLabel lb6=new JLabel("-꽝:");

lb6.setSize(200,30);

lb6.setLocation(70,170);

add(lb6);

stat1=new JLabel(Integer.toString(result[0])+"회");

stat1.setSize(70,30);

stat1.setLocation(150,170);

add(stat1);


JLabel lb7=new JLabel("-7등:");

lb7.setSize(200,30);

lb7.setLocation(70,190);

add(lb7);

stat2=new JLabel(Integer.toString(result[1])+"회");

stat2.setSize(70,30);

stat2.setLocation(150,190);

add(stat2);

//seungmin3

JLabel lb8=new JLabel("-6등:");

lb8.setSize(200,30);

lb8.setLocation(70,210);

add(lb8);

stat3=new JLabel(Integer.toString(result[2])+"회");

stat3.setSize(70,30);

stat3.setLocation(150,210);

add(stat3);

JLabel lb9=new JLabel("-5등:");

lb9.setSize(200,30);

lb9.setLocation(70,230);

add(lb9);

stat4=new JLabel(Integer.toString(result[3])+"회");

stat4.setSize(70,30);

stat4.setLocation(150,230);

add(stat4);

JLabel lb10=new JLabel("-4등:");

lb10.setSize(200,30);

lb10.setLocation(70,250);

add(lb10);

stat5=new JLabel(Integer.toString(result[4])+"회");

stat5.setSize(70,30);

stat5.setLocation(150,250);

add(stat5);

JLabel lb11=new JLabel("-3등:");

lb11.setSize(200,30);

lb11.setLocation(70,270);

add(lb11);

stat6=new JLabel(Integer.toString(result[5])+"회");

stat6.setSize(70,30);

stat6.setLocation(150,270);

add(stat6);

JLabel lb12=new JLabel("-2등:");

lb12.setSize(200,30);

lb12.setLocation(70,290);

add(lb12);

stat7=new JLabel(Integer.toString(result[6])+"회");

stat7.setSize(70,30);

stat7.setLocation(150,290);

add(stat7);

JLabel lb13=new JLabel("-1등:");

lb13.setSize(200,30);

lb13.setLocation(70,310);

add(lb13);

stat8=new JLabel(Integer.toString(result[7])+"회");

stat8.setSize(70,30);

stat8.setLocation(150,310);

add(stat8);

JButton exit=new JButton("도전 그만하기");

exit.setSize(150,30);

exit.setBackground(Color.green);

exit.setForeground(Color.white);

exit.setLocation(300,310);

exit.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

System.exit(0);

}

});

add(exit);

}

class Listen_Lotto implements MouseListener{


@Override

public void mouseClicked(MouseEvent e) {

// TODO Auto-generated method stub

inning++;

challenge=0;

word=null;

result=new int[8];

lotto=new int[7];

//현재상태 초기화

temp.setText(word);

stat.setText(Integer.toString(challenge)+"회");

stat1.setText(Integer.toString(result[0])+"회");

stat2.setText(Integer.toString(result[1])+"회");

stat3.setText(Integer.toString(result[2])+"회");

stat4.setText(Integer.toString(result[3])+"회");

stat5.setText(Integer.toString(result[4])+"회");

stat6.setText(Integer.toString(result[5])+"회");

stat7.setText(Integer.toString(result[6])+"회");

stat8.setText(Integer.toString(result[7])+"회");

for(int i=0;i<7;i++)

{

lotto[i]=(int)(Math.random()*45)+1;

for(int j=0;j<i;j++)

{

if(lotto[i]==lotto[j])

{

i--;

break;

}

}

}

lb.setText("제"+Integer.toString(inning)+"회");

l1.setText(Integer.toString(lotto[0]));

l2.setText(Integer.toString(lotto[1]));

l3.setText(Integer.toString(lotto[2]));

l4.setText(Integer.toString(lotto[3]));

l5.setText(Integer.toString(lotto[4]));

l6.setText(Integer.toString(lotto[5]));

l7.setText(Integer.toString(lotto[6]));

}


@Override

public void mousePressed(MouseEvent e){ }


@Override

public void mouseReleased(MouseEvent e) {}


@Override

public void mouseEntered(MouseEvent e) {}


@Override

public void mouseExited(MouseEvent e) {}

}

class Listen_mynum implements MouseListener{


@Override

public void mouseClicked(MouseEvent e) {

challenge++;

mynum=new int[7];

for(int i=0;i<7;i++)

{

mynum[i]=(int)(Math.random()*45)+1;

for(int j=0;j<i;j++)

{

if(mynum[i]==mynum[j])

{

i--;

break;

}

}

}

//도전번호 세팅

count=0;

num1.setText(Integer.toString(mynum[0]));

num2.setText(Integer.toString(mynum[1]));

num3.setText(Integer.toString(mynum[2]));

num4.setText(Integer.toString(mynum[3]));

num5.setText(Integer.toString(mynum[4]));

num6.setText(Integer.toString(mynum[5]));

num7.setText(Integer.toString(mynum[6]));

//상태 세팅

stat.setText(Integer.toString(challenge)+"회");

for(int i=0;i<7;i++)

{

for(int j=0;j<7;j++)

{

if(lotto[i]==mynum[j])

count++;

}

}

switch(count){

case 0:

result[0]++;

word="꽝";

break;

case 1:

result[1]++;

word="7등";

break;

case 2:

result[2]++;

word="6등";

break;

case 3:

result[3]++;

word="5등";

break;

case 4:

result[4]++;

word="4등";

break;

case 5:

result[5]++;

word="3등";

break;

case 6:

result[6]++;

word="2등";

break;

case 7:

result[7]++;

word="1등";

break;

}

//상태세팅

temp.setText(word);

stat.setText(Integer.toString(challenge)+"회");

stat1.setText(Integer.toString(result[0])+"회");

stat2.setText(Integer.toString(result[1])+"회");

stat3.setText(Integer.toString(result[2])+"회");

stat4.setText(Integer.toString(result[3])+"회");

stat5.setText(Integer.toString(result[4])+"회");

stat6.setText(Integer.toString(result[5])+"회");

stat7.setText(Integer.toString(result[6])+"회");

stat8.setText(Integer.toString(result[7])+"회");

}


@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

}

}

public static void main(String[] args) {

// TODO Auto-generated method stub

LSample a=new LSample();

}

}




+ Recent posts