2024-11-06





package basic;
import java.awt.BorderLayout;
import javax.swing.*;
public class Ex24_Layout extends JFrame {
public Ex24_Layout() {
setTitle("성적 처리");
// 컨테이너를 만들자.
JPanel container1 = new JPanel(); // 상단-1 컨테이너
JPanel container2 = new JPanel(); // 상단-2 컨테이너
JPanel container3 = new JPanel(); // 하단 컨테이너
// 1. 컴포넌트를 만들어 보자
// 1-1. 상단-1 컨테이너에 들어갈 컴포넌트를 만들자.
JLabel jl1 = new JLabel("이 름 : ");
JTextField name = new JTextField(10);
// 1-2. 상단-2 컨테이너에 들어갈 컴포넌트를 만들자.
JLabel jl2 = new JLabel("국어 : ");
JTextField kor = new JTextField(3);
JLabel jl3 = new JLabel("영어 : ");
JTextField eng = new JTextField(3);
JLabel jl4 = new JLabel("수학 : ");
JTextField mat = new JTextField(3);
// 1-3. 가운데 들어갈 컴포넌트를 만들자.
JTextArea jta = new JTextArea(5, 20);
JScrollPane jsp = new JScrollPane(
jta,
ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
jta.setLineWrap(true); // 자동으로 줄바꿈을 해주는 메서드
// 1-4. 하단 컨테이너에 들어갈 컴포넌트를 만들자.
JButton button1 = new JButton("계 산");
JButton button2 = new JButton("종 료");
JButton button3 = new JButton("취 소");
// 컴포넌트를 컨테이너레 올려 주어야 한다.
// 2-1. 상단-1 컨테이너에 올라갈 컴포넌트를 올려 주자.
container1.add(jl1); container1.add(name);
// 2-2. 상단-2 컨테이너에 올라갈 컴포넌트를 올려 주자.
container2.add(jl2); container2.add(kor);
container2.add(jl3); container2.add(eng);
container2.add(jl4); container2.add(mat);
// 2-3. 하단 컨테이너에 올라갈 컴포넌트를 올려 주자.
container3.add(button1);
container3.add(button2);
container3.add(button3);
// 새로운 컨테이너를 하나 더 만들자.
JPanel group = new JPanel(new BorderLayout()); // 여분 컨테이너
// 여분 컨테이너에 기존의 컨테이너를 올려 주자.
group.add(container2, BorderLayout.NORTH);
group.add(jsp, BorderLayout.CENTER);
group.add(container3, BorderLayout.SOUTH);
// 3. 컨테이너를 프레임에 올려 주어야한다.
add(container1, BorderLayout.NORTH);
add(group, BorderLayout.CENTER);
setBounds(100, 100, 300, 300);
pack();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args) {
new Ex24_Layout();
}
}'Java > 기초 내용 정리' 카테고리의 다른 글
| Java(GUI)_Layout_26 (0) | 2024.11.06 |
|---|---|
| Java(GUI)_Layout_25 (0) | 2024.11.06 |
| Java(UtilClass)_Wrapper_01 (0) | 2024.11.06 |
| Java(UtilClass)_Singleton_01 (0) | 2024.11.06 |
| Java(UtilClass)_Inner_02 (0) | 2024.11.06 |