libro
www.tuyano.com
初心者のためのJavaFXプログラミング入門

FXMLでGUIをデザインしよう (3/6)

作成:2014-12-06 11:16
更新:2014-12-06 11:16

■FXMLを書いてみよう

では、実際に簡単なサンプルを書いてみましょう。下にリストを掲載しておきます。これは、Labelを1つ、BorderPaneに追加しただけのシンプルなものです。以下に内容を説明しておきましょう。

・<?import ?>タグ
冒頭に、いくつもの<?import ?>文が記述されていますね。実は、これは前述のJavaFX Scene Builderで作ると自動的に追加されるものです。Paneとコントール関係のクラスをひと通りimportする文を用意しているのですね。

・<BorderPane>タグ
ここでは、<BorderPane>というタグを用意し、この中に<Label>タグを記述しています。が、よく見ると、直接組み込んでいるのではなくて、<Top>というタグの中に書いていることがわかります。これは、<BorderPane>特有のもので、組み込む場所を示すタグの中にコントロールのタグを記述するようになっているのです。用意されているのは、以下の5つになります。

・<BorderPane>の配置場所タグ
<Top>, <Bottom>, <Right>, <Left>, <Ceter>

・<Label>タグ
<Label>タグでは、textという属性で表示するテキストが指定されています。コントロールのプロパティは、このように属性としてタグに記述できます。「text="○○"」というのは、「setText("○○")」と同じことをしているんだ、と考えるとわかりやすいでしょう。

このように、コントロールでプロパティを設定する「set○○(値)」という処理は、そのままコントロールタグの「○○=値」という形に書き直せることが多いのです。これはLabelに限らず、コントロール全般でいえることです。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

<?xml version="1.0" encoding="UTF-8"?>

<?import javafx.scene.text.*?>
<?import javafx.scene.control.*?>
<?import java.lang.*?>
<?import javafx.scene.layout.*?>

<BorderPane 
    xmlns="http://javafx.com/javafx/8" 
    xmlns:fx="http://javafx.com/fxml/1">
    <top>
        <Label text="This is FXML!" />
    </top>
</BorderPane>
※関連コンテンツ

「初心者のためのJavaFXプログラミング入門」に戻る