JavaFX チュートリアル〜今度こそ、初めてでも大丈夫2:Label〜

イントロダクション

以前記載した記事で「初めてでも大丈夫」などと記載していましたが、ちょっと「危ういな」と思いチュートリアルをやってみようとなりました。

初心者向けというのもあり、以下の手順で進めやすいように作ったつもりです。

  1. 基本のコードを写経(書き写すこと)する
  2. 写経したコードを動かす
  3. XXXを修正してXXXする
  4. 起動確認
  5. ソースの意味を理解

こんな感じで進めると分かりやすいと思います。

前回はラベルを表示しました。そして今回もラベルを表示します。ただし

回転したり大きくしたりします

チュートリアル

ここのページを、戦国Xサラの要領でガンガン斬り伏せながらやっていきます。

<Oracleのチュートリアル>

基本のコード

public class Lv1_Label2 extends Application {
    /**
    * このメソッドは、Applicationクラス(JavaFXのフレームワーク部品)
    * のメソッドをオーバーライドする。
    * {@link Application#launch(String...)}から呼び出される。
    */
    @Override
    public void start(Stage primaryStage) throws Exception {
        // チュートリアルには省略されている部分
        Group group = new Group();
        // この部分がチュートリアルに記載されている。
        // Fontを使用する方法
        Label label1 = new Label();
        label1.setFont(new Font("Aeial", 30));
        label1.setText("Text1");
        group.getChildren().add(label1);
        // チュートリアルでは省略されている
        Scene scene = new Scene(group, 300, 300);
        primaryStage.setScene(scene);
        primaryStage.setTitle("チュートリアル1");
        primaryStage.show();
    }
    /**
    * メインメソッド。
    * Apllicationクラスのlaunchメソッドを呼び出す。
    *
    * @param args プログラム引数
    */
    public static void main(String[] args) {
        launch(args);
    }
}

これだけで起動すると下のように表示されます。

そして上のコードに3行追加します。

// 位置を指定する
label1.setTranslateX(60);
label1.setTranslateY(60);
// 回転させる
label1.setRotate(45.0);

すると下のように表示されます。

setTranslateX(表示するX座標)とsetTranslateY(表示するY座標)を指定することでテキストの表示する位置を変更します。

表示する画面の左上の端が(0, 0)になります。なのでテキストの中心位置が(60, 60) かつ、角度が45度下に下がった状態で画面上に表示されています。

試しに「45」を「-45」に変更してみます。

上のようになりました。そのほかにもいじってみると表示結果が変わります。

大きくする

基本のコードに下の行を追加します。

label1.setScaleX(1.5);
label1.setScaleY(1.5);

実行結果はこんな感じです。

ラベルが見切れてしまいました。なので下のコードでテキストの位置をずらします。

label1.setLayoutX(20.0); // Xを20右に移動
label1.setLayoutY(30.0); // Yを30下に下げる

とりあえず今回は、ここで終わりにします。

でわでわ。。。

[<<<前回](https://zenryokuservice.com/wp/2019/03/03/javafx-%e3%83%81%e3%83%a5%e3%83%bc%e3%83%88%e3%83%aa%e3%82%a2%e3%83%ab%e3%80%9c%e4%bb%8a%e5%ba%a6%e3%81%93%e3%81%9d%e3%80%81%e5%88%9d%e3%82%81%e3%81%a6%e3%81%a7%e3%82%82%e5%a4%a7%e4%b8%88%e5%a4%ab/) [次回>>>](https://zenryokuservice.com/wp/2019/03/05/javafx-%e3%83%81%e3%83%a5%e3%83%bc%e3%83%88%e3%83%aa%e3%82%a2%e3%83%ab%e3%80%9c%e4%bb%8a%e5%ba%a6%e3%81%93%e3%81%9d%e3%80%81%e5%88%9d%e3%82%81%e3%81%a6%e3%81%a7%e3%82%82%e5%a4%a7%e4%b8%88%e5%a4%ab3/)

投稿者:

takunoji

音響、イベント会場設営業界からIT業界へ転身。現在はJava屋としてサラリーマンをやっている。自称ガテン系プログラマー(笑) Javaプログラミングを布教したい、ラスパイとJavaの相性が良いことに気が付く。 Spring framework, Struts, Seaser, Hibernate, Playframework, JavaEE6, JavaEE7などの現場経験あり。 SQL, VBA, PL/SQL, コマンドプロント, Shellなどもやります。

コメントを残す