반응형
과제1
더보기

결과 화면1
package day04;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JTextField;
import javax.swing.JLabel;
import javax.swing.JButton;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class MySwing06 extends JFrame {
private JPanel contentPane;
private JTextField tf01;
private JTextField tf02;
private JTextField tf03;
private JTextField tf04;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
MySwing06 frame = new MySwing06();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public MySwing06() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 524, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
tf01 = new JTextField();
tf01.setBounds(12, 10, 57, 21);
contentPane.add(tf01);
tf01.setColumns(10);
tf02 = new JTextField();
tf02.setColumns(10);
tf02.setBounds(128, 10, 57, 21);
contentPane.add(tf02);
tf03 = new JTextField();
tf03.setColumns(10);
tf03.setBounds(248, 10, 66, 21);
contentPane.add(tf03);
tf04 = new JTextField();
tf04.setColumns(10);
tf04.setBounds(430, 10, 66, 21);
contentPane.add(tf04);
JLabel lbl1 = new JLabel("에서");
lbl1.setBounds(81, 13, 57, 15);
contentPane.add(lbl1);
JLabel lbl2 = new JLabel("까지");
lbl2.setBounds(196, 13, 57, 15);
contentPane.add(lbl2);
JButton btn = new JButton("배수 합은");
btn.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
myClick();
}
});
btn.setBounds(324, 9, 97, 23);
contentPane.add(btn);
}
void myClick() {
int tf1 = Integer.parseInt(tf01.getText());
int tf2 = Integer.parseInt(tf02.getText());
int tf3 = Integer.parseInt(tf03.getText());
int tf4 = 0;
for(int i=tf1; i<=tf2; i++) {
if(i%tf3 == 0) {
tf4 += i;
}
}
tf04.setText(String.valueOf(tf4));
}
}

과제2
전화기 시스템
버튼을 누를 때마다 창에 추가되며 CALL 버튼을 클릭 시 번호와 함께 알람창이 떠야한다.
더보기

결과 화면2
package day04;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.SwingConstants;
public class MySwing07 extends JFrame {
private JPanel contentPane;
private JTextField tf;
JButton btn1, btn2, btn3, btn4, btn5, btn6, btn7, btn8, btn9, btn0, btn_call;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
MySwing07 frame = new MySwing07();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public MySwing07() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 323, 328);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
tf = new JTextField();
tf.setHorizontalAlignment(SwingConstants.RIGHT);
tf.setBounds(30, 23, 252, 21);
contentPane.add(tf);
tf.setColumns(10);
btn1 = new JButton("1");
btn1.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClickBtn1();
}
});
btn1.setBounds(30, 66, 75, 23);
contentPane.add(btn1);
btn2 = new JButton("2");
btn2.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClickBtn2();
}
});
btn2.setBounds(120, 66, 75, 23);
contentPane.add(btn2);
btn3 = new JButton("3");
btn3.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClickBtn3();
}
});
btn3.setBounds(207, 66, 75, 23);
contentPane.add(btn3);
btn4 = new JButton("4");
btn4.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClickBtn4();
}
});
btn4.setBounds(30, 113, 75, 23);
contentPane.add(btn4);
btn5 = new JButton("5");
btn5.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClickBtn5();
}
});
btn5.setBounds(120, 113, 75, 23);
contentPane.add(btn5);
btn6 = new JButton("6");
btn6.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClickBtn6();
}
});
btn6.setBounds(207, 113, 75, 23);
contentPane.add(btn6);
btn7 = new JButton("7");
btn7.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClickBtn7();
}
});
btn7.setBounds(30, 162, 75, 23);
contentPane.add(btn7);
btn8 = new JButton("8");
btn8.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClickBtn8();
}
});
btn8.setBounds(120, 162, 75, 23);
contentPane.add(btn8);
btn9 = new JButton("9");
btn9.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClickBtn9();
}
});
btn9.setBounds(207, 162, 75, 23);
contentPane.add(btn9);
btn0 = new JButton("0");
btn0.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClickBtn0();
}
});
btn0.setBounds(30, 213, 75, 23);
contentPane.add(btn0);
btn_call = new JButton("CALL");
btn_call.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
MyClick();
}
});
btn_call.setBounds(120, 213, 162, 23);
contentPane.add(btn_call);
}
void MyClickBtn1() {
String mySu = btn1.getText();
tf.setText(tf.getText() + mySu);
}
void MyClickBtn2() {
String mySu = btn2.getText();
tf.setText(tf.getText() + mySu);
}
void MyClickBtn3() {
String mySu = btn3.getText();
tf.setText(tf.getText() + mySu);
}
void MyClickBtn4() {
String mySu = btn4.getText();
tf.setText(tf.getText() + mySu);
}
void MyClickBtn5() {
String mySu = btn5.getText();
tf.setText(tf.getText() + mySu);
}
void MyClickBtn6() {
String mySu = btn6.getText();
tf.setText(tf.getText() + mySu);
}
void MyClickBtn7() {
String mySu = btn7.getText();
tf.setText(tf.getText() + mySu);
}
void MyClickBtn8() {
String mySu = btn8.getText();
tf.setText(tf.getText() + mySu);
}
void MyClickBtn9() {
String mySu = btn9.getText();
tf.setText(tf.getText() + mySu);
}
void MyClickBtn0() {
String mySu = btn0.getText();
tf.setText(tf.getText() + mySu);
}
void MyClick() {
String su = tf.getText();
JOptionPane.showMessageDialog(null, su);
}
}

+ 다른 방법
package day04;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.SwingConstants;
public class MySwing07_2 extends JFrame {
private JPanel contentPane;
private JTextField tf;
JButton btn1, btn2, btn3, btn4, btn5, btn6, btn7, btn8, btn9, btn0, btn_call;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
MySwing07_2 frame = new MySwing07_2();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public MySwing07_2() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 323, 328);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
tf = new JTextField();
tf.setHorizontalAlignment(SwingConstants.RIGHT);
tf.setBounds(30, 23, 252, 21);
contentPane.add(tf);
tf.setColumns(10);
btn1 = new JButton("1");
btn1.setBounds(30, 66, 75, 23);
contentPane.add(btn1);
btn2 = new JButton("2");
btn2.setBounds(120, 66, 75, 23);
contentPane.add(btn2);
btn3 = new JButton("3");
btn3.setBounds(207, 66, 75, 23);
contentPane.add(btn3);
btn4 = new JButton("4");
btn4.setBounds(30, 113, 75, 23);
contentPane.add(btn4);
btn5 = new JButton("5");
btn5.setBounds(120, 113, 75, 23);
contentPane.add(btn5);
btn6 = new JButton("6");
btn6.setBounds(207, 113, 75, 23);
contentPane.add(btn6);
btn7 = new JButton("7");
btn7.setBounds(30, 162, 75, 23);
contentPane.add(btn7);
btn8 = new JButton("8");
btn8.setBounds(120, 162, 75, 23);
contentPane.add(btn8);
btn9 = new JButton("9");
btn9.setBounds(207, 162, 75, 23);
contentPane.add(btn9);
btn0 = new JButton("0");
btn0.setBounds(30, 213, 75, 23);
contentPane.add(btn0);
btn_call = new JButton("CALL");
btn_call.setBounds(120, 213, 162, 23);
contentPane.add(btn_call);
btn1.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myclick(e);}});
btn2.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myclick(e);}});
btn3.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myclick(e);}});
btn4.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myclick(e);}});
btn5.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myclick(e);}});
btn6.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myclick(e);}});
btn7.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myclick(e);}});
btn8.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myclick(e);}});
btn9.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myclick(e);}});
btn0.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myclick(e);}});
btn_call.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { mycall();}});
}
void myclick(MouseEvent e) {
JButton b = (JButton) e.getSource(); // 기존에 존재하는 text의 값을 가져옴
String str_new = b.getText();
String str_old = tf.getText();
tf.setText(str_old + str_new);
}
void mycall() {
String str_tel = tf.getText();
JOptionPane.showMessageDialog(null, "calling\n"+str_tel);
}
}
과제3
더보기

결과 화면3
package day04;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JTextArea;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class MySwing08 extends JFrame {
private JPanel contentPane;
private JTextField tf_first;
private JTextField tf_last;
JTextArea ta;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
MySwing08 frame = new MySwing08();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public MySwing08() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 303, 401);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lbl_first = new JLabel("첫별수");
lbl_first.setBounds(43, 36, 57, 15);
contentPane.add(lbl_first);
JLabel lbl_last = new JLabel("끝별수");
lbl_last.setBounds(43, 72, 57, 15);
contentPane.add(lbl_last);
tf_first = new JTextField();
tf_first.setBounds(128, 33, 116, 21);
contentPane.add(tf_first);
tf_first.setColumns(10);
tf_last = new JTextField();
tf_last.setColumns(10);
tf_last.setBounds(128, 69, 116, 21);
contentPane.add(tf_last);
JButton btn = new JButton("별출력하기");
btn.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
myclick();
}
});
btn.setBounds(43, 112, 201, 23);
contentPane.add(btn);
ta = new JTextArea();
ta.setBounds(43, 145, 201, 195);
contentPane.add(ta);
}
void myclick() {
int fir = Integer.parseInt( tf_first.getText() );
int last = Integer.parseInt( tf_last.getText() );
String sta = "";
for(int i=fir; i<last+1; i++) {
for(int j=0; j<i; j++) {
sta += "*";
}
sta += "\n";
}
ta.setText(sta);
}
}

과제4
더보기

결과 화면4
package day04;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class MySwing09 extends JFrame {
private JPanel contentPane;
private JTextField tf_mine;
private JTextField tf_com;
private JTextField tf_result;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
MySwing09 frame = new MySwing09();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public MySwing09() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 335, 318);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lbl_mine = new JLabel("나");
lbl_mine.setBounds(50, 33, 57, 15);
contentPane.add(lbl_mine);
JLabel lbl_com = new JLabel("컴");
lbl_com.setBounds(50, 70, 57, 15);
contentPane.add(lbl_com);
JLabel lbl_result = new JLabel("결과");
lbl_result.setBounds(50, 111, 57, 15);
contentPane.add(lbl_result);
tf_mine = new JTextField();
tf_mine.setBounds(151, 30, 116, 21);
contentPane.add(tf_mine);
tf_mine.setColumns(10);
tf_com = new JTextField();
tf_com.setColumns(10);
tf_com.setBounds(151, 67, 116, 21);
contentPane.add(tf_com);
tf_result = new JTextField();
tf_result.setColumns(10);
tf_result.setBounds(151, 108, 116, 21);
contentPane.add(tf_result);
JButton btn = new JButton("결과보기");
btn.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
myclick();
}
});
btn.setBounds(50, 151, 217, 23);
contentPane.add(btn);
}
void myclick() {
String mi = tf_mine.getText();
int com = (int)(Math.random()*3);
String co;
System.out.println(com);
if(com == 0) co = "가위";
else if(com == 1) co = "바위";
else co = "보";
tf_com.setText(co);
String result = "";
if(mi.equals("가위") && co.equals("보")) result = "이김";
else if(mi.equals("바위") && co.equals("가위")) result = "이김";
else if(mi.equals("보") && co.equals("바위")) result = "이김";
else if(mi.equals("가위") && co.equals("바위")) result = "짐";
else if(mi.equals("바위") && co.equals("보")) result = "짐";
else if(mi.equals("보") && co.equals("가위")) result = "짐";
else result = "비김";
tf_result.setText(result);
}
}

과제5
더보기

결과 화면5
package day04;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JTextArea;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class MySwing10 extends JFrame {
private JPanel contentPane;
private JTextField tf;
JTextArea ta;
int com;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
MySwing10 frame = new MySwing10();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public MySwing10() {
com = (int)(Math.random()*99);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 301, 393);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lbl = new JLabel("맞출수");
lbl.setBounds(31, 25, 57, 15);
contentPane.add(lbl);
tf = new JTextField();
tf.setBounds(130, 22, 116, 21);
contentPane.add(tf);
tf.setColumns(10);
JButton btn = new JButton("맞춰보세요");
btn.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
myclick();
}
});
btn.setBounds(31, 62, 215, 23);
contentPane.add(btn);
ta = new JTextArea();
ta.setBounds(31, 109, 215, 208);
contentPane.add(ta);
}
void myclick() {
int tfText = Integer.parseInt(tf.getText());
String result = ta.getText();
if(com > tfText) {
result += tfText + "\tUP\n";
} else if (com < tfText) {
result += tfText + "\tDOWN\n";
} else {
result += tfText + "\tANSWER";
}
ta.setText(result);
if(com == tfText) JOptionPane.showMessageDialog(null, tfText+" 정답입니다.");
}
}

반응형
'Python' 카테고리의 다른 글
[Python] 9장 Anaconda 설치 및 실행 방법 (0) | 2024.03.29 |
---|---|
[Python] 8장 pyqt5 설치 방법 (0) | 2024.03.28 |
[Python] 7장 자바 SWING (0) | 2024.03.28 |
[Python] 6장 자바 SWING 설치 방법 및 생성, 실행 방법 (0) | 2024.03.27 |
[Python] 5장 클래스 (0) | 2024.03.27 |