문준영
새벽 코딩
문준영
전체 방문자
오늘
어제
  • 분류 전체보기
    • 웹 개발
    • JAVA
      • 기본 문법 내용 정리
      • 함수 내용 정리
      • 쉽게 배우는 자바 프로그래밍 문제 풀이
    • HTML
      • HTML
      • CSS
      • 문제풀이
    • JavaScript
    • MYSQL
    • C
      • 기본 문법 내용 정리
      • 백준 알고리즘 (c언어)
      • 자료구조
    • Python
      • 참고 알고리즘
      • 기본 문법 내용 정리
      • 자료구조 내용 정리
      • 백준 알고리즘 (파이썬)
    • 깃허브
    • 멀티잇 풀스택

티스토리

hELLO · Designed By 정상우.
문준영

새벽 코딩

Swing  컴포넌트
JAVA/기본 문법 내용 정리

Swing 컴포넌트

2021. 11. 3. 21:18

 

JPanel

Frame 내에서 각각 다른 레이아웃을 구현하고 영역 별 구분을 위해 사용하는 컴포넌트

 

JLabel

JLabel은 수정이 불가능한 텍스트를 삽입할 때 사용하는 컴포넌트

 

  • 생성자 생성 방법
  1. JLabel() - 빈 레이블
  2. JLabel(Icon image) - 이미지 레이블 
  3. JLabel(String text) - 문자열 레이블
  4. JLabel(String text, Icon image, int hAlign) - 문자열과 이미지 모두 가진 레이블                                                             -  hAlign                                                                                                                                                       SwingConstans.LEFT: 왼쪽 정렬                                                                                                   SwingConstans.RIGHT: 왼쪽 정렬                                                                                                         SwingConstans.CENTER: 가운데 정렬

 

  • ImageIcon

     ImageIcon 변수 = new ImageIcon("파일"); 을 통해 이미지를 불러온다.

 

- 파일안에 넣인 경우 경로 :  "src/파일/파일이름"

- ImageIcon 주요 메서드 

setIcon(image) 아이콘 이미지 설정 

 

  • JLabel 주요 메서드
setText(문자)  텍스트 설정
getText(문자) 텍스트 가져오기
setIcon(아이콘) 아이콘 설정
setBorderPainted(false)  버튼의 경계를 감춤
pack() 사이즈 자동으로 맞춤
setOpaque(true)
JLable은 기본적으로 투명색이기 때문에 배경색이 적용 되지 않는다.
Opaque 값을 true로 미리 설정해 주어야 배경색이 적용된다.

 

JButton

Button을 추가하기 위해 사용하는 컴포넌트

버튼이 선택되면 Action 이벤트가 발생한다. 

 

  • 생성자 생성 방법
  1. JButton() - 빈 버튼
  2. JButton(Icon image) - 이미지 버튼
  3. JButton(String text) - 문자열 버튼
  4. JButton(String text, Icon image) - 문자열 이미지 모두 가진 버튼 

 

  • 이미지 버튼 상태에 따른 메서드 
setIcon(Icon image) 버튼이 보통 상태에 있을 때 출력되는 이미지(디폴트
setRolloverIcon(Icon image)  버튼위에 마우스가 올라가면 출력되는 이미지
setPressedIcon(Icon image) 마우스 버튼이 눌러져 있는 동안 출력되는 이미지

 

2,3번의 경우 기본 생성자가 생성 된 이후 버튼에 해당 함수를 추가하는 형태로 사용한다.

 

JCheckBox 

(선택과 해제) 두 상태만 가지는 컴포넌트

체크박스의 선택 상태에 변화가 생기면 item 이벤트가 발생한다.

 

  • 생성자 생성 방법
  1. JCheckBox()
  2. JCheckBox(Icon image)
  3. JCheckBox(Icon image, boolean selected) - 이미지 체크 박스
  4. JCheckBox(String text)
  5. JCheckBox(String text, Icon image) - 문자열과 이미지를 가진 체크 박스
  6. JCheckBox(String text, Icon image, boolean selected) - 문자열과 이미지를 가진 체크 박스

* selected : true - 초기 값을 선택 상태로 

 

  • JCheckBox의 주요 메서드 
setSelected(boolean select) 선택 상태 변경      true: 선택 / false:해제
setBorderPainted(boolean b) 체크 박스 외곽선 여부 변경

 

 

JRadioButton

라디오버튼은 체크박스와 달리 버튼 그룹 중 단 하나의 라디오 버튼만 선택이 가능하다.

JRadioButton은 여러개의 버튼을 묶을 그룹 객체를 생성하기 위한 ButtonGroup을 선언한 뒤 

그룹 객체 안에다가 라디오버튼을 삽입해야한다. 

 

  • ButtonGroup

ButtonGroup 변수 = new ButtonGroup(); 은 단순히 라디오 버튼을 묶는 개념으로

버튼 그룹에 속한 라디오 버튼 중 하나만 선택이 가능한 상태로 만들어준다. 

 

  • 생성자 생성 방법
  1. JRadioButton()
  2. JRadioButton(Icon image)
  3. JRadioButton(String image)
  4. .... 체크박스와 동일

 

JTextField

JTextField를 사용하면 한 줄의 문자열을 입력받을 수 있는 텍스트 필드를 만들 수 있다.

텍스트 필드 입력 중 <Enter>키가 입력되면 Action 이벤트가 발생한다.

 

  • 생성자 생성 방법
  1. JTextField()
  2. JTextField(int cols) - 열의 개수만큼 입력 창이 할당
  3. JTextField(String text) - text 문자열의 기본값을 가짐
  4. JTextField(String text, int cols)

 

  • JTextField 주요 메서드
append(String text) 객체에 text 문자열을 삽입

 

JTextArea

JTextArea를 사용하면 여러 줄의 문자열을 입력받을 수 있는 텍스트 필드를 만들수 있다.

입력 창의 크기보다 더 많은 문자를 입력받을 수 있지만 JScrollPane에 삽입하여야 스크롤바를 지원받을 수 있다.

 

  • JScrollPane

new JScrollPane(JTextArea 객체) 를 통해 JScollPane 컴포넌트 안에 JTextArea 객체를 삽입한다.

사용시 스크롤바를 지원받는다.

 

  • 생성자 생성 방법
  1. JTextArea()
  2. JTextArea(int rows, int cols) - 행*열의 텍스트 영역 지정
  3. JTextArea(String text) - text 문자열의 기본값 가짐
  4. JTextArea(String text, int rows, int cols)

 

JList

JList를 사용하면 사용자에게 아이템을 보여주고 선택할 수 있게 하는 리스트를 만들 수 있다.

 

  • 생성자 생성 방법
  1. JList()
  2. JList(Vector ListData) - 백터로 부터 아이템을 공급받는 리스트 생성
  3. JList(Object [] ListData) - 배열로 부터 아이템을 공급받는 리스트 생성 

 

  • ListData
  1. 문자열 리스트 생성: String [] arr= { "a", "b" ,"c"};
  2. 이미지 리스트 생성 : ImageIcon [] arr={ new ImageIcon("경로"), ...}

 

JComboBox

JComboBox는 텍스트 필드,버튼 그리고 드롭다운 리스트로 구성된 콤보 박스 컴포넌트를 만들 수 있다.

쉽게 말해 JComboBox는 버튼을 통해 리스트가 제공받는다.

 

  • 생성자 생성 방법
  1. JComboBox()
  2. JComboBox(Vector items) - 벡터로부터 아이템을 공급받는 콤보박스 생성
  3. JComboBox(Object [] items) - 배열로부터 아이템을 공급받는 콤보박스 생성 
  • JComboBox 주요 메서드
getSelectedIndex() 현재 해당하는 인덱스 번호 리턴

 

JMenu

 

  • 메뉴를 만들기 위해 필요한 요소 
  1. 메뉴바 - JMenuBar (여러개의 메뉴를 붙이는 바로 프레임에 부착)
  2. 메뉴 - JMenu (여러개의 메뉴 아이템을 가짐)
  3. 메뉴 아이템 - JMenuItem

   포함관계: JMenuBar > JMenu > JMenuItem 

 

 

  • JMenu 주요 메서드
setJMenuBar(JMenuBar bar) 메뉴 바를 프레임에 부착 
addSeparator() 메뉴에 분리선 삽입
String getActionCommand() 메뉴 아이템 리턴 

 

팝업 다이얼로그

팝업 다이얼로그는 사용자에게 메세지를 전달하거나 문자열을 입력받을 수 있는 간단한 팝업 창으로

JOptionPane 클래스의 static 메서드를 이용하여 생성한다.

 

  • 입력 다이얼로그 JOptionPane.showInputDialog() 
 static String JOptionPane.showInputDialog(String msg)

의미: 한줄로 입력받는 다이얼로그 생성

msg: 다이얼로그 메세지
리턴 값: 사용자가 입력한 문자열 (취소 버튼이 선택되거나 창이 닫히면 null 리턴)

 

  • 확인 다이얼로그 JOptionPane.showConfirmDialog()
 static int JOptionPane.showConfirmDialog(Component parent Component, Object msg, String title, int optionType )

의미: 사용자로부터 확인을 받기 위한 확인 다이얼로그를 호출

parentComponent: 다이얼로그의 부모 컴포넌트로서 다이얼로그가 출력되는 영역의 범위 지정
                                null 값이면 전체 화면 중앙에 출력 
msg: 다이얼로그 메세지
title: 다이얼로그 타이틀
optionType: 다이얼로그 옵션 종류 지정  
   - JOptionPane.옵션종류
     1. YES_NO_OPTION    2. TES_NO_CANCEL_OPTION   3. OK_CANCEL_OPTION

리턴 값:  optionType 에 따른 사용자가 선택한 옵션 
  - JOptionPane.옵션종류
     1. JOptionPane.CLOSE_OPTION : 사용자가 선택없이 다이얼로그 창을 닫은 경우
     2. JOptionPane.YES_OPTION : 사용자가 "예"를 선택한 경우
      .....

 

  • 메세지 다이얼로그  JOptionPane.showMessageDialog()
 static void JOptionPane.showMessageDialog(Component parentComponent, Object msg, String title, int Message)
의미: 사용자에게 메세지 전달하기 위한 다이얼로그 호출

parentComponent: 다이얼로그의 부모 컴포넌트로서 다이얼로그가 출력되는 영역의 범위 지정
                                null 값이면 전체 화면 중앙에 출력 
msg: 다이얼로그 메세지
title: 다이얼로그 타이틀
MessageType: 다이얼로그의 종류 지정
   - JOptionPane.메세지타입
     1. ERROR_MESSAGE  2. INFORMATION_MESSAGE
     3. WARNING_MESSAGE   4. QUESTION_MESSAGE  5. PLAIN_MESSAGE 

리턴 값:  메시지와 "확인" 버튼 하나만 출력하며 "확인"을 누르거나 다이얼로그를 닫으면 단순 리턴한다.

 

'JAVA > 기본 문법 내용 정리' 카테고리의 다른 글

정규표현식  (0) 2021.11.18
GUI 이벤트 처리  (0) 2021.11.05
자바 GUI 기초  (0) 2021.10.29
컬렉션과 제네릭  (0) 2021.10.29
입출력  (0) 2021.10.07
    'JAVA/기본 문법 내용 정리' 카테고리의 다른 글
    • 정규표현식
    • GUI 이벤트 처리
    • 자바 GUI 기초
    • 컬렉션과 제네릭
    문준영
    문준영
    공부한 내용 정리!

    티스토리툴바