プログラミング学習日記

プログラミング学習時のメモ帳。

javafx 2 control pane scene stage

間違っている場所あったら優しく教えてね

f:id:topaz1-3:20190830213944j:plain
階層関係

雑な絵ですがこの様な階層関係にあります. コントロール , ペイン , シーン , ステージ と 小さい部品から作って上の階層に載せていきます.

import javafx.application.*;
import javafx.stage.*;
import javafx.scene.*;
import javafx.scene.control.*;
import javafx.scene.layout.*;

/**
 * sample2
 */
public class sample2 extends Application {
    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) throws Exception {
        // コントロールの作成
        Label lb = new Label();
        lb.setText("HELLO WORLD!");

        // ペインの作成
        BorderPane pane = new BorderPane();

        // ペインへの追加
        pane.setCenter(lb);

        // シーンの作成
        Scene sc = new Scene(pane, 300, 200);

        // ステージへの追加
        primaryStage.setScene(sc);

        // ステージの表示
        primaryStage.setTitle("Sample");
        primaryStage.show();

    }
}

このコードをコンパイルして実行します.

f:id:topaz1-3:20190830214343p:plain
ウィンドウ表示

Pane

Paneクラスには今回利用したBorderPaneクラスだけではなく, AnchorPaneやDialogPaneなどが存在する.
Pane は上下左右中心にNodeを配置することができる. NodeはcameraやParent, Shape3Dなどのスーパークラスとなっている.

Scene

コンストラクタとして Parent クラスを持っています. Parentクラスはペインを含む多くのクラスのスーパークラスとなっているためそれらのサブクラスを引数として取ることができます.

ブログを見ていただきありがとうございました