top / index / prev / next / target / source

2012-09-18 diary: [JavaFX] シンプルサンプル: こんにちは世界!

いがぴょんの日記 日記形式でつづる いがぴょんコラム ウェブページです。

[JavaFX] シンプルサンプル: こんにちは世界!

Java7u7 以降であれば、Java/jre/lib 以下の「jfxrt.jar」を参照ライブラリーに追加するだけで、以下の JavaFX 2 プログラムをコンパイルすることができます。(実行時には特に設定などは必要ありません)

Eclipse の場合には「外部 JAR の追加」により、JRE 以下の「jfxrt.jar」を選択して追加します。

<sample/Sample001.java>

package sample;

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

/**
 * 最低レベルの JavaFX 2 サンプル
 */
public class Sample001 extends Application {
  @Override
  public void start(final Stage primaryStage) {
    final StackPane root = new StackPane();
    root.getChildren().add(
        new Label("こんにちは、JavaFX 2 世界!\nHello JavaFX 2 World!"));

    final Scene scene = new Scene(root, 200, 150);
    primaryStage.setTitle("こんにちは、世界!");
    primaryStage.setScene(scene);
    primaryStage.show();
  }

  public static void main(final String[] args) {
    launch(args);
  }
}

実行結果

[f:id:igapyon:20120918162219p:image]

[JavaFX][JNLP] シンプル: JNLP として動作させるには追加で以下が必要

<build.xml>

JAR ファイルを生成するために、以下の Ant スクリプトを利用します。

<?xml version="1.0" encoding="UTF-8"?>
<project name="Sample" default="build" basedir=".">
  <property name="encoding" value="Windows-31J" />

  <target name="jar">
    <delete file="Sample001.jar" />
    <jar destfile="Sample001.jar">
      <zipfileset dir="bin" includes="**/*" />
      <zipfileset dir="src" includes="**/*" prefix="src" />
    </jar>
  </target>

  <target name="compile">
    <delete dir="bin" />
    <mkdir dir="bin" />
    <javac destdir="bin" debug="true" source="1.7" target="1.7" fork="true" encoding="${encoding}">
      <src path="src/" />
      <classpath>
        <fileset dir="C:/Program Files (x86)/Java/jre7/lib/" includes="jfxrt.jar" />
      </classpath>
      <include name="**/*.java" />
    </javac>
  </target>

  <target name="build" depends="compile,jar">
  </target>
</project>

<Sample001.jnlp>

JavaFX アプリケーションを JNLP で駆動するには、以下のような JNLP ファイルを準備してこれを実行します。

<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0" xmlns:jfx="http://javafx.com" href="Sample001.jnlp">
  <information>
    <title>Sample001</title>
    <vendor>Toshiki Iga</vendor>
    <description>Sample JavaFX 2 application.</description>
    <offline-allowed />
  </information>
  <resources>
    <jfx:javafx-runtime version="2.2+" href="http://javadl.sun.com/webapps/download/GetFile/javafx-latest/windows-i586/javafx2.jnlp" />
  </resources>
  <resources>
    <j2se version="1.7+" href="http://java.sun.com/products/autodl/j2se" />
    <jar href="Sample001.jar" download="eager" />
  </resources>
  <jfx:javafx-desc width="200" height="150" main-class="sample.Sample001" name="Sample001" />
  <update check="background" />
</jnlp>

登場キーワード


この日記について