내가 보려고 정리하는/Python

JFrame - 230222

보동이용용 2023. 2. 22. 19:30
반응형

< Btn event 주기! >

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.JButton;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

public class MySwing02 extends JFrame {

	private JPanel contentPane;
	private JTextField tf;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					MySwing02 frame = new MySwing02();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public MySwing02() {
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 450, 300);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));

		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		tf = new JTextField();
		tf.setText("100");
		tf.setBounds(47, 50, 106, 21);
		contentPane.add(tf);
		tf.setColumns(10);
		
		JButton btn = new JButton("INCREASE");
		btn.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				myclick();
			}
		});
		btn.setBounds(183, 49, 95, 23);
		contentPane.add(btn);
	}
	
	public void myclick() {
		String a =tf.getText();
		int aa = Integer.parseInt(a);
		aa++;
		tf.setText(String.valueOf(aa));
	}
	
}

 

<JFrame으로 로또뽑기!!>

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.JButton;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

public class MySwing04 extends JFrame {

	private JPanel contentPane;
	private JLabel lbl1;
	private JLabel lbl2;
	private JLabel lbl3;
	private JLabel lbl4;
	private JLabel lbl5;
	private JLabel lbl6;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					MySwing04 frame = new MySwing04();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public MySwing04() {
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 450, 300);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));

		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		lbl1 = new JLabel("__");
		lbl1.setBounds(23, 32, 25, 15);
		contentPane.add(lbl1);
		
		lbl2 = new JLabel("__");
		lbl2.setBounds(72, 32, 25, 15);
		contentPane.add(lbl2);
		
		lbl3 = new JLabel("__");
		lbl3.setBounds(123, 32, 25, 15);
		contentPane.add(lbl3);
		
		lbl4 = new JLabel("__");
		lbl4.setBounds(175, 32, 25, 15);
		contentPane.add(lbl4);
		
		lbl5 = new JLabel("__");
		lbl5.setBounds(225, 32, 25, 15);
		contentPane.add(lbl5);
		
		lbl6 = new JLabel("__");
		lbl6.setBounds(274, 32, 25, 15);
		contentPane.add(lbl6);
		
		JButton btn = new JButton("로또 생성하기");
		btn.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				myclick();
			}
		});
		btn.setBounds(12, 68, 287, 23);
		contentPane.add(btn);
	}
	
	public void myclick() {
		
		int[] arr45 = {1,2,3,4,5,   6,7,8,9,10,
		               11,12,13,14,15,   16,17,18,19,20,
		               21,22,23,24,25,   26,27,28,29,30,
		               31,32,33,34,35,   36,37,38,39,40,
		               41,42,43,44,45}; 
		
		for(int i=0; i < 1000; i++) {
			int rnd = (int)(Math.random()*45);
			int a = arr45[rnd];
			int b = arr45[0];	
			arr45[0] = a;
			arr45[rnd] = b;
		}
		
		for(int i=0; i<arr45.length;i++) {
			System.out.println("i : " + arr45[i]);
		}
		
		lbl1.setText(String.valueOf(arr45[0]));
		lbl2.setText(String.valueOf(arr45[1]));
		lbl3.setText(String.valueOf(arr45[2]));
		lbl4.setText(String.valueOf(arr45[3]));
		lbl5.setText(String.valueOf(arr45[4]));
		lbl6.setText(String.valueOf(arr45[5]));
		
	}

}

 

<JFrame으로 구구단하기!!>

public class MySwing05 extends JFrame {

	private JPanel contentPane;
	private JTextField tf;
	private JTextArea ta;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					MySwing05 frame = new MySwing05();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public MySwing05() {
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 374, 409);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));

		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		JLabel lbl = new JLabel("출력단수");
		lbl.setBounds(41, 44, 52, 15);
		contentPane.add(lbl);
		
		tf = new JTextField();
		tf.setBounds(111, 41, 78, 21);
		contentPane.add(tf);
		tf.setColumns(10);
		
		JButton btn = new JButton("출력하기");
		btn.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				myclick();
			}
		});
		btn.setBounds(41, 69, 148, 23);
		contentPane.add(btn);
		
		ta = new JTextArea();
		ta.setBounds(41, 109, 148, 200);
		contentPane.add(ta);
	}
	
	public void myclick() {
		
		String dan = tf.getText();
		int idan = Integer.parseInt(dan);
		
        //방법1
		for(int i = 0; i <= 9; i++) {
			ta.append(dan + "*" + i + "=" + String.valueOf(idan*i) + "\n");
		}
        
        //방법2
        String txt="";
		for(int i = 0; i <= 9; i++) {
			txt += idan + "*" + i + "=" + (idan*i) + "\n";
		}
		ta.setText(txt);
        
        //결과는 같다.

	}
}

 

 

<JFrame으로 홀짝하기!!>

		btn = new JButton("게임하기");
		btn.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				myclick();
			}
		});
		btn.setBounds(23, 172, 202, 23);
		contentPane.add(btn);
	}
	public void myclick() {
		String com = "";
		String mine = "";
		String result = "";
		
		mine = tfMine.getText();
		
		double rnd = Math.random();
		if(rnd > 0.5) {
			com = "홀";
		}else {
			com = "짝";
		}
		tfCom.setText(com);
		
		if(mine.equals(com)) {
			tfResult.setText("승리");
		}else {
			tfResult.setText("패배");
		}
	}


}

< JFrame으로 전화기만들기 >

	
		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); } });
		
		btnCall.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { myCall(); } });
	}
	
	public void myCall() {
		String str_tel = tf.getText();
		JOptionPane.showMessageDialog(this, "calling...\n"+str_tel);
	}
	
	public void myclick(MouseEvent e) {
		JButton imsi = (JButton) e.getSource();
		String str_new = imsi.getText();
		String str_old = tf.getText();
		
		tf.setText(str_old + str_new);
	}
	
}

반응형