{{위키데이터 속성 추적}}
{{소프트웨어 정보
| name                   = 자바FX
| logo                   = 
| developer              = [[썬 마이크로시스템즈]] ([[오라클 (기업)|오라클]]에 인수)
| released               = {{시작 날짜와 나이|2008|12|04}}
| latest release version = 19
| latest release date = {{시작 날짜와 나이|2022|09|13}}<ref>{{웹 인용|url=https://gluonhq.com/products/javafx/openjfx-19-release-notes/|title=OpenJFX 19 Release Notes}}</ref>
| latest preview version =
| latest preview date    =
| operating system       = [[자바 가상 머신|자바 런타임 환경]]
| platform               = [[크로스 플랫폼]]
| language               = [[자바 (프로그래밍 언어)|자바]]
| genre                  = [[애플리케이션 프레임워크]]
| source model           = [[오픈 소스]]
| license                = [[EULA]], 부분적으로는 [[GNU GPL|GPL]]+[[GPL 링크 예외|링크 예외]]<ref name="openJFX">{{웹 인용
| url=http://openjdk.java.net/projects/openjfx/
| title=OpenJFX Project
| publisher=[[오라클 (기업)|오라클]]
| accessdate=2011-12-07}}</ref>
| website                = {{URL|https://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html}}
}}
{{자바 플랫폼}}
'''자바FX'''(JavaFX)는 [[응용 소프트웨어|데스크톱 애플리케이션]]과 [[리치 인터넷 애플리케이션]](RIA)을 개발하고 배포하는 [[소프트웨어 플랫폼]]으로, 다양한 장치에서 실행 가능하다. 자바FX는 [[자바 SE]]를 위한 표준 [[그래픽 사용자 인터페이스|GUI]] 라이브러리로서 [[스윙 (자바)|스윙]]을 대체하기 위해 고안되었다.<ref name="FAQs">{{웹 인용|url=http://www.oracle.com/technetwork/java/javafx/overview/faq-1446554.html#6 |title=JavaFX FAQ |website=Oracle.com |date= |accessdate=2016-08-01}}</ref> 자바FX는 [[마이크로소프트 윈도우]], [[리눅스]], [[macOS]]의 [[데스크톱 컴퓨터]]와 [[웹 브라우저]]를 지원한다.

== 자바FX 애플리케이션 예제 ==
=== 예제 코드 ===
다음은 단순한 자바FX 기반 프로그램을 나타낸 것이다. 버튼이 포함된 창(stage)을 표시한다.
[[파일:Hello world in javafx.png|섬네일|자바FX의 헬로 월드 프로그램.]]
<syntaxhighlight lang="java">
package javafxtuts;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class Javafxtuts extends Application {

    @Override
    public void start(Stage primaryStage) {
        // Creating the java button
        Button btn = new Button();
        // Setting text to button
        btn.setText("Hello World");
        //registering a handler for button
        btn.setOnAction((ActionEvent event) -> {
            // printing Hello World! to the console
            System.out.println("Hello World!");
        });
        // Initializing the StackPane class
        StackPane root = new StackPane();
        // Adding all the nodes to the FlowPane
        root.getChildren().add(btn);
        //Creating a scene object
        Scene scene = new Scene(root, 300, 250);
        //Adding the title to the window (primaryStage)
        primaryStage.setTitle("Hello World!");
        primaryStage.setScene(scene);
        // show the window(primaryStage)
        primaryStage.show();
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        launch(args);
    }

}
</syntaxhighlight>

== 같이 보기 ==
* [[컬 (프로그래밍 언어)]]
* [[표준 위젯 툴킷]]
== 각주 ==
{{각주}}

== 외부 링크 ==
{{위키공용분류}}
* {{공식 웹사이트}}
* [http://openjdk.java.net/projects/openjfx/ OpenJFX website]

{{자바 (소프트웨어 플랫폼)}}
{{리치 인터넷 애플리케이션}}

[[분류:자바 (프로그래밍 언어)]]
[[분류:오라클 소프트웨어]]
[[분류:썬 마이크로시스템즈 소프트웨어]]
[[분류:리치 인터넷 애플리케이션 프레임워크]]