안녕하세요.


지난시간에는 구체적으로 치수를 기입하면서 프레임을 구상해 봤습니다.




이런 모습이었죠.


이제 구상한대로 버튼을 배치해보겠는데요, 이때 알아야 될 함수가 setBounds입니다. 사용방법은 아래와 같습니다.



setBounds(가로위치, 세로위치, 가로길이, 세로길이);



위치를 결정하는건 해당 구성요소의 왼쪽위 꼭지점의 좌표인데요, 왼쪽 버튼을 예로 들면 30, 170이 되겠죠. 그리고 버튼의 가로길이는 122고 세로길이는 30이니까 아래처럼 코딩하면 되겠습니다.



btn1.setBounds(30, 170, 122, 30);



오른쪽 버튼의 경우에는 가로위치값만 다르겠네요. 30+122+30 해서 182가 되겠습니다.


코드와 결과화면은 아래와 같습니다.



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
// Study01.java
 
package study;
 
import javax.swing.JButton;
import javax.swing.JFrame;
 
public class Study01 {
 
    public static void main(String[] args) {
 
        // 프레임 생성
        JFrame frm = new JFrame("슬라임 퇴치하기");
 
        // 프레임 크기 설정
        frm.setSize(350300);
 
        // 프레임을 화면 가운데에 배치
        frm.setLocationRelativeTo(null);
 
        // 프레임을 닫았을 때 메모리에서 제거되도록 설정
        frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        // 레이아웃 설정
        frm.getContentPane().setLayout(null);
 
        // 버튼 생성
        JButton btn1 = new JButton("슬라삐");
        JButton btn2 = new JButton("슬라디");
 
        // ★ 버튼 위치와 크기 설정
        btn1.setBounds(3017012230);
        btn2.setBounds(18217012230);
 
        // ★ 프레임에다가 버튼 추가
        frm.getContentPane().add(btn1);
        frm.getContentPane().add(btn2);
 
        // 프레임이 보이도록 설정
        frm.setVisible(true);
 
    }
 
}
 
cs




원하던대로 잘 나오네요^^


아직은 버튼을 눌러도 아무런 반응이 없는데 다음시간에는 버튼이 동작하도록 코딩을 해보겠습니다.


감사합니다.


+ Recent posts