728x90
반응형
BoderLayout 관리자와 GridLayout 관리자를 이용하여 전자계산기를 만듭니다.
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Main {
public static void main(String[] args) {
Frame mainFrame = new Frame("전자계산기");
mainFrame.setBounds(100,100,200,250);
mainFrame.setLayout(new BorderLayout());
TextField display = new TextField(20);
display.setText("0");
display.setEditable(false);
Panel displayPane = new Panel();
displayPane.setBounds(0,30,200,40);
displayPane.add(display);
ButtonPane buttonPane = new ButtonPane();
buttonPane.setBounds(0,70,200,180);
mainFrame.add("North", displayPane);
mainFrame.add("Center", buttonPane);
mainFrame.setVisible(true);
mainFrame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
super.windowClosing(e);
System.exit(0);
}
});
}
}
class ButtonPane extends Panel {
private Button[] butt = null;
private final String[] buttName = {
"7","8","9","/",
"4","5","6","7",
"1","2","3","-",
"0","c","=","+" };
public ButtonPane() {
setLayout(new GridLayout(4,4));
butt = new Button[buttName.length];
for(int i=0; i<butt.length; i++) {
butt[i] = new Button(buttName[i]);
add(butt[i]);
}
}
}
728x90
반응형
'즐거운프로그래밍' 카테고리의 다른 글
[자바] 컴포넌트의 배치(메모장 만들기 예제) (0) | 2023.10.24 |
---|---|
[자바] 배치 관리자(GridLayout 예제) (0) | 2023.10.24 |
[자바] AWT 이벤트와 리스너의 종류 (0) | 2023.10.24 |
[자바] AWT 패키지의 이해(컨테이너) (0) | 2023.10.24 |
[자바] AWT 패키지의 이해(텍스트 영역 TextArea Component) (0) | 2023.10.23 |