안녕하세요.
이번 시간에는 버튼을 눌렀을때 라벨의 글자가 바뀌도록 구현해보겠습니다. 이 때 필요한 함수와 사용방법은 아래와 같습니다.
버튼객체.addActionListener(event -> {
버튼이 눌러지면 실행할 내용
});
addActionListener는 의역하면 '행동 감지기 추가'입니다. 버튼을 클릭하는 행동을 감지하겠다는거죠. 잘 보시면 함수의 인수가 여러줄에 걸쳐 입력이 돼있는 모습입니다. 소괄호속에 중괄호가 있는 특이한 형태네요. addActionListener();에서 소괄호 속이 비대해져 있는 형태라고 보시면 닫는 소괄호와 세미콜론도 이해가 되실 것 같네요.
event도 있고 ->(화살표)도 있고 갑자기 난이도가 너무 높아졌다고 생각하실지 모르겠는데 그냥 수학공식처럼 받아들이시면 되겠습니다. 외워두셔도 좋고 어디다 복사해 놓으셔도 좋습니다.
자 그럼 실제로 적용해봅시다.
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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | // Study01.java package study; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; public class Study01 { public static void main(String[] args) { // 프레임 생성 JFrame frm = new JFrame(); // 프레임 제목 설정 frm.setTitle("슬라임 퇴치하기"); // 프레임 크기 설정 frm.setSize(350, 300); // 프레임을 화면 가운데에 배치 frm.setLocationRelativeTo(null); // 프레임을 닫았을 때 메모리에서 제거되도록 설정 frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 레이아웃 설정 frm.getContentPane().setLayout(null); // 버튼 생성 JButton btn1 = new JButton("슬라삐"); JButton btn2 = new JButton("슬라디"); // 버튼 위치와 크기 설정 btn1.setBounds(30, 170, 122, 30); btn2.setBounds(182, 170, 122, 30); // 프레임에다가 버튼 추가 frm.getContentPane().add(btn1); frm.getContentPane().add(btn2); // 라벨 설정 JLabel lbl = new JLabel(); lbl.setBounds(30, 200, 274, 50); lbl.setText("게임을 시작합니다"); lbl.setHorizontalAlignment(JLabel.CENTER); // 수평 가운데 정렬 frm.getContentPane().add(lbl); // ★ 버튼이 눌렸을때 btn1.addActionListener(event -> { lbl.setText("나는 슬라삐"); }); btn2.addActionListener(event -> { lbl.setText("나는 슬라디"); }); // 프레임이 보이도록 설정 frm.setVisible(true); } } | cs |
잘되죠? ㅎㅎ
다음 시간에는 버튼 위에다가 슬라임 그림을 넣어보겠습니다.
감사합니다.
'자바로 게임 만들기' 카테고리의 다른 글
[자바로 게임 만들기] 49. 그림 넣기 (2) | 2019.03.04 |
---|---|
[자바로 게임 만들기] 48. 패키지 (0) | 2019.02.28 |
[자바로 게임 만들기] 46. 라벨 배치하기 (2) | 2019.02.26 |
[자바로 게임 만들기] 45. 버튼 마음대로 배치하기 (2) | 2019.02.25 |
[자바로 게임 만들기] 44. 프레임 설계하기 (0) | 2019.02.22 |