Purple Bobblehead Bunny

Backend/JAVA

[JAVA] Swing 이미지

준영어린이 2022. 3. 8. 16:39

 

스윙 컴포넌트에 이미지 표시하기

 

• 거의 모든 스윙 컴포넌트에는 텍스트 옆에 이미지를 추가로 표시할 수 있다.

• ImageIcon 인스턴스를 생성하여 사용

• JPEG, GIF, PNG 이미지 파일을 읽을 수 있다.

 

ImageIcon image = new ImageIcon("image.gif"); --> 이미지 생성
JLabel label = new JLabel("이미지 레이블"); --> 라벨 생성
label.setIcon(image); --> 이미지를 라벨의 이미지로 설정

레이블 생성

 

JLabel()  빈 레이블

JLabel(Icon image)  이미지 레이블

JLabel(String text)   문자열 레이블

JLabel(String text, Icon image, int hALign)  문자열과 이미지 모두 가진 레이블

 

* hALign : 수평 정렬 값, SwingConstants.LEFT, SwingConstants.RIGHT, SwingConstants.CENTER 중 하나

 

레이블 생성 예

 

• 문자열 레이블 생성

   JLabel label = new JLabel("문자열 레이블");

 

이미지 레이블 생성

  - 이미지 파일로부터 이미지를 읽기 위해 ImageIcon 클래스 사용

  - 다룰 수 있는 이미지 : jpg, gif, png

    • sunset.jpg의 경로명이 "images/sunset.jpg"인 경우

    • ImageIcon image = new ImageIcon("images/sunset.jpg");

      JLaabel label = new JLabel(image);

•  수평 졍렬 값을 가진 레이블 컴포넌트 생성

   - 수평 정렬로, 문자열과 이미지를 모두 가진 레이블

     Image image = new ImageIcon("images/sunset.jpg");

     JLabel label = new JLabel("문자열", image, SwingContents.CENTER);

 

JLabel을 이용한 레이블 만들기

 

 

 

 

 

JButton 으로 버튼 만들기

용도

  • 버튼 모양의 컴포넌트, 사용자로부터 명령을 입력받기 위한 목적

  • 버튼이 클릭될 때 ActionEvent 발생

 

버튼 생성

 

JButton()  빈 버튼

JButto(Icon image)  이미지 버튼

JButton(String text)  문자열 버튼

JButton(String text, Icon image)  문자열과 이미지 모두 가진 버튼

 

이미지 버튼 만들기

 

• 하나의 버튼에 3개의 이미지 등록

  - 마우스 조작에 따라 3개의 이미지 중 적절한 이미지 자동 출력

• 3개의 버튼 이미지

    • normallcon

      버튼의 보통 상대(디폴트) 때 출력되는 이미지

      생성자에 이미지 아이콘 전달 혹은 JButton의 setIcon(nomalIcon);

    •  rolloverIcon

        버튼에 마우스가 올라갈 때 출력되는 이미지

        이미지 설정 메소드 : JButton의 setRolloverIcon(rolloverIcon);

    •  pressedIcon

        버튼을 누른 상태 때 출력되는 이미지

        이미지 설정 메서드 : JButton의 setPressedIcon(pressedIcon);

 

이미지 버튼에 이미지 설정  

 

  • 이미지 로딩

      필요한 이미지 로딩 : new ImageIcon(이미지 경로);

ImageIcon normalIcon = new ImageIcon("images/normalIcon.gif");
ImageIcon rolloverIcon = new ImageIcon("images/rolloverIcon.gif");
ImageIcon pressedIcon = new ImageIcon("images/pressedIcon.gif");

  버튼에 이미지 등록

   JButton의 메소드를 호출하여 이미지 등록

JButton button = new JButton("테스트 버튼", normalIcon); --> normalIcon 달기
button.setRolloverIcon(rolloverIcon); --> rolloverIcon 달기
button.setPressedIcon(pressedIcon); --> pressedIcon 달기

   실행 중에 normal 이미지(디폴트 이미지) 교체

 

ImageIcon newIcon = new ImageIcon("images/newIcon.gif");
button.setIcon(newIcon);          // 디폴트 이미지 변경

 

 

JButton을 이용한 이미지 버튼 만들기

 

 

 

 

 

'Backend > JAVA' 카테고리의 다른 글

[JAVA] 메뉴 구성하기  (0) 2022.03.08
[JAVA] Event Listener Button,Mouse  (0) 2022.03.08
[JAVA] Vector, 동적 배열 자료구조  (0) 2022.03.08
[JAVA] LinkedList  (0) 2022.03.07
[JAVA] ArrayList  (0) 2022.03.04