간단한 스윙 응용프로그램을 만들어보자. 그림과 같이 프레임의 컨텐트팬에 BorderLayout
배치관리자를 설치하고, NORTH
영역과 CENTER
영역에는 JPanel
을 상속받은 패널을 만들어 붙인다. NORTH
영역의 패널에는 3개의 버튼 컴포넌트를, CENTER
영역의 패널에는 3개의 JLabel
을 이용하여 각각 "Hello", "Java", "Love"를 출력한다. 문자열이 출력되는 위치는 독자가 정하라.
import javax.swing.*;
import java.awt.*;
public class OpenChallenge9 extends JFrame {
public OpenChallenge9(){
setTitle("Open Challenge 9");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = getContentPane();
c.setLayout(new BorderLayout());
c.add(new NorthPanel(),BorderLayout.NORTH);
c.add(new CenterPanel(),BorderLayout.CENTER);
setSize(500,500);
setVisible(true);
}
public static void main(String[] args){
new OpenChallenge9();
}
}
class NorthPanel extends JPanel {
public NorthPanel(){
setBackground(Color.LIGHT_GRAY);
this.add(new JButton("Open"));
this.add(new JButton("Read"));
this.add(new JButton("Close"));
}
}
class CenterPanel extends JPanel {
public CenterPanel(){
setBackground(Color.white);
setLayout(null);
JLabel hello = new JLabel("Hello");
hello.setLocation(130,80);
hello.setSize(200,20);
add(hello);
JLabel java = new JLabel("Java");
java.setLocation(80,180);
java.setSize(200,20);
add(java);
JLabel love = new JLabel("Love");
love.setLocation(180,130);
love.setSize(200,20);
add(love);
}
}