1. JavaFX 시작하기

엉엉 자바는 어려워·2022년 8월 2일
0

JavaFX

목록 보기
1/1

🙂JavaFX란?

JavaFX는 크로스 플랫폼(Cross-Platform)에서 실행하는 리치 클라이언트 어플리케이션(Rich Client Application)을 개발하기 위한 그래픽과 미디어 패키지를 말합니다. JavaFX는 Java 7부터 JDK에 포함되어 있기 때문에 별도의 SDK 설치 없이도 사용 할 수 있다.
UI 생성, 이벤트 처리, 멀티미디어 재생, 웹 뷰 등과 같은 기능은 JavaFX API로 개발하고 그 이외의 기능은 자바 표준 API를 활용해서 개발할 수 있다.

화면 레이아웃과 스타일, 어플리케이션 로직을 분리할 수 있기 때문에 디자이너와 개발자들이 협력해서 JavaFX 어플리케이션을 개발할 수 있는 구조를 가지고 있다.

설치하기

  1. 프로젝트에 jdk1.8 버전 설정

  2. Eclipse Preferences를 열어 Java | Compiler를 찾아 Compiler compliance level을 1.8로 설정합니다.

  3. Eclipse Preferences를 열어 Java | Installed JREs를 찾습니다.
    다른 JRE나 JDK 선택을 해제합니다.

  4. Add..를 클릭한 후 Standard VM 선택한 뒤 JDK 8이 설치되어 있는 디렉토리를 고릅니다.

시작하기

  1. 메인 클래스는 추상 클래스인 Application을 상속받고, start() 메소드를 재정의해야한다. 그리고 main() 메소드에서 Application의 launch() 메소드(객체 생성하고 start 메소드 호출하는 역할) 호출한다.

LifeCycle

  • init() 호출 -> start() 호출 메인 윈도우 실행 -> stop() 호출->JavaFX 종료
    -stop()메소드는 앱이 종료되기 전 자원 정리할 기회를 준다.(파일 닫기, 네트워크 끊기)
  • 종료 조건 : 마우스로 닫기, close() 메소드 호출, Platform.exit() 또는 System.exit(0); 호출
  • 각 단계에서 호출되는 메소드는 서로 다른 스레드 상에서 실행된다.

JavaFX API

  1. Application
  2. Stage(=윈도우) : 한 번에 하나의 scene을 가질 수 있다. 메인 윈도우는 start() 메소드의 파라미터로 전달된다.
  3. Scene : UI 루트 컨테이너인 javafx.scene.Parent를 통해 직접 생성한다.
  4. Pane(컨테이너) : 레이아웃을 작성할 때 컨트롤들을 쉽게 배치할 수 있도록 도와주는 클래스가 컨테이너이다.
public void start(Stage primaryStage) throws Exception {
	VBox root = new VBox(); 
	Scene scene = new Scene(Parent root);
	primaryStage.setScene(scene);
    primaryStage.show();
}

Pading(패딩)과 Majin(마진)

  • 패딩 : 안쪽 여백
  • 마진 : 바깥 여백

FXML 레이아웃

XML 기반의 마크업 언어로, JavaFX App의 UI 레이아웃을 자바 코드에서 분리해서 태그로 선언하는 방법제공

Scene Builder

0개의 댓글