티스토리 뷰

//계산기 만들기

import java.awt.*;
import javax.swing.*;

public class homework02 extends JFrame {
	private Label lb = new Label("계산기");
	private TextArea tf = new TextArea();
	private Button[] bt = new Button[24];
	private String[] str = { "%", "CE", "C", "X", "1/ⅹ", "ⅹ²", "²√ⅹ", "÷", "7", "8", "9", "×", "4", "5", "6", "-", "1",
			"2", "3", "+", "+/-", "0", ".", "=" };

	private BorderLayout bl = new BorderLayout(10, 10);
	private Panel p = new Panel();// 가상 영역의 공간배치를 위함
	private Panel p1 = new Panel();
	private GridLayout gl = new GridLayout(6, 4, 5, 5); // 6행. 4열. 세로 간격, 가로 간격
	private GridLayout gl2 = new GridLayout(2, 1, 5, 5);

	public homework02(String title) {// 생성자 구성
		super(title); // 상위 생성자를 호출
		super.setSize(400, 500);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		this.init();

		Dimension screen = Toolkit.getDefaultToolkit().getScreenSize(); // (암기필요)스크린 사이즈를 자동으로 배정해서 크기 지정해서 가져온다는 내용
		Dimension frm = super.getSize(); // 프레임 크기를 받아옴
		int xpos = (int) (screen.getWidth() / 2 - frm.getWidth() / 2/* 반 이동 해야 하기 때문 */);
		int ypos = (int) (screen.getHeight() / 2 - frm.getHeight() / 2);
		super.setLocation(xpos, ypos);

		super.setResizable(false/* 크기 변경 불가하도록 함 */);
		super.setVisible(true);// 화면에 보여줘라!
	}

	public void init() {

		this.add("North", p1);

		p1.add(tf);

		this.add("Center", p);
		p.setLayout(gl);

		for (int i = 0; i < bt.length; ++i) {
			bt[i] = new Button(String.valueOf(str[i]));
			p.add(bt[i]);
		}
	}

	public static void main(String[] ar) { // 메인 메소드 지정
		new homework02("계산기");
	}
}
반응형
LIST
댓글
링크
공지사항
최근에 올라온 글