javaではフォルダのことをパッケージと呼ぶ
ボタンのついたアプリケーションを作りましょう。
(自習)
setAlignment
>セル内の水平方向の位置を設定するにはCellStyleインターフェースで用意されているsetAlignmentメソッドを使います。
FlowPane
>FlowPaneは、フローペインの境界で折り返されるフローに子をレイアウトします。
水平フローペイン(デフォルト)は、ノードを行形式でレイアウトし、フローペインの幅で折り返します。垂直フローペインは、ノードを列形式でレイアウトし、フローペインの高さで折り返します。フローペインにボーダーまたは余白(あるいはその両方)が設定されている場合、コンテンツはこれらの枠内でフローします。
なんのことやら
import javafx. application.Application;
いつもトップに出ているこの部分だけど、これがないと動かない。何をしているかというと「これはアプリケーション(新しくウィンドウを開いてなにかするプログラム)ですよ」という宣言。
新たにウィンドウが開き、タイトルも表示される。そういう用意されたシステムの1つ。
いまimportなんとかがプログラムの上部にいっぱい羅列されている形になっているが、そのなかで必要なものがないと動かないしエラーになる。なにかばってんがついて「ないよ」と言われたらそのへんが抜けてないか確認するといい。
ユーザーインターフェースを使ったプログラムを作りますよ。
ラベル
使うときはnewして使う。
newするときに使うメソッドは特別に「コンストラクタ」(構築子/こうちくし)と呼ぶ。
変数を作ってnewでつくったのを一行で代入してもいいし、
2行にわたって(1:変数の宣言 2:newして代入)してもいい。
pane(ぺいん)
一区画。
グリッドペイン、フローペイン、ただのペインとかいろいろあるらしい。
今回使ったのはフローペイン。どんどん横に並べる
Alignment(アライメント)
位置の指定らしい。今回いちばん上の中央になっている。
pane.setAlignment(Pos.TOP_CENTER);
これがただのCENTERだったら縦横の中央にくるよ。
--->Exe17.java
package application;
import javafx. application.Application;
import javafx.geometry.Pos;
import javafx. scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.layout.FlowPane;
import javafx. stage.Stage;
public class EXE17 extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage myStage) {
Label l1;//Label型変数l1を宣言
l1 = new Label("ラベル1");//Labelオブジェクトを生成し変数に代入
Button b1 = new Button("ボタン1");//Buttonオブジェクトを生成し変数に代入
FlowPane pane = new FlowPane();//FlowPaneオブジェクトを生成し変数に代入
pane.setAlignment(Pos.TOP_CENTER);
pane.getChildren().add(l1);//ラベル1
pane.getChildren().add(b1);//ボタン1
pane.setStyle("-fx-background-color:greenyellow;");
Scene scene = new Scene(pane,100,100);
myStage.setTitle("Exe17");
myStage.setScene(scene);
myStage.show();
}
}