JavaFX Hello¶
JDK 8でJavaFX Hello world¶
JDK 8で、JavaFX GUIライブラリを使ってHello worldメッセージを表示します。
FXMLもCSSも使いません。
本ソースコードは、 source:learn/java/javafx/HelloJavaFx に格納しています。
第一歩)白紙のウィンドウを表示する¶
まずは白紙のウィンドウを表示させる、GUIプログラムとしての最小限度のプログラムを作成します。
- 使用しているJavaFXのAPIクラスは次の2つ(リンクはJavaFX 8 APIリファレンス)
- JavaFXアプリケーションでは、
javafx.application.Application
クラスのサブクラスを設けます。Application
クラスは、抽象メソッドstart
を持つ抽象クラスなので、必ずstart
メソッドをオーバーライドします。public class HelloJavaFx extends Application { @Override public void start(Stage primaryStage) { primaryStage.show(); } }
start
メソッドの引数primaryStage
は、デスクトップに表示するトップレベルウィンドウで、JavaFX側で生成します。デフォルトでは非表示なので、ウィンドウを表示するにはshow
メソッドを呼びます。
第二歩)ウィンドウタイトルを指定する¶
start
メソッドの中でprimaryStage
のsetTitle
メソッドを呼びタイトル文字列を指定します。@Override public void start(Stage primaryStage) { + primaryStage.setTitle("HelloJavaFx"); primaryStage.show(); }
第三歩)ウィンドウ内に文字列を表示する¶
- シーングラフを構築し、文字列を表示する際にLabelを、シーングラフの頂点はGroupを使います。
public void start(Stage stage) { + Group root = new Group(); + Label helloLabel = new Label("Hello, JavaFX world"); + root.getChildren().add(helloLabel); + + Scene scene = new Scene(root); + stage.setScene(scene); stage.setTitle("HelloJavaFx"); stage.show(); }