JavaFXでテキストエリアの作成・値を取得する方法について記載します。
目次
テキストエリアを作成・値を取得する方法
1. テキストエリアの作成
テキストエリアを作成するには、TextArea クラスを使用します。
構文
TextArea text = new TextArea();
実行例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
import javafx.application.Application; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.TextArea; import javafx.scene.layout.VBox; import javafx.stage.Stage; public class Main extends Application { public static void main(String[] args){ Application.launch(args); } @Override public void start(Stage pStage) throws Exception { // TextArea TextArea text = new TextArea(); text.setMaxWidth(300); // 横幅を指定 text.setMaxHeight(200); // 高さを指定 // 配置 VBox vbRoot = new VBox(); vbRoot.setAlignment(Pos.CENTER); vbRoot.getChildren().add(text); pStage.setTitle("テキストエリア"); pStage.setWidth(400); pStage.setHeight(300); pStage.setScene(new Scene(vbRoot)); pStage.show(); } } |
次にラベルとテキストエリアを組み合わせて表示します。
実行例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
import javafx.application.Application; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.Label; import javafx.scene.control.TextArea; import javafx.scene.layout.HBox; import javafx.scene.layout.VBox; import javafx.stage.Stage; public class Main extends Application { public static void main(String[] args){ Application.launch(args); } @Override public void start(Stage pStage) throws Exception { // Label Label lbl = new Label("複数行の入力ができます"); lbl.setMaxWidth(300); // 横幅を指定 HBox hbLbl = new HBox(); hbLbl.setMaxWidth(300); hbLbl.setAlignment(Pos.CENTER_LEFT); hbLbl.getChildren().add(lbl); // TextArea TextArea text = new TextArea(); text.setMaxWidth(300); // 横幅を指定 text.setMaxHeight(200); // 高さを指定 HBox hbText = new HBox(); hbText.setMaxWidth(300); hbText.setAlignment(Pos.CENTER_LEFT); hbText.getChildren().add(text); // LabelとTextAreaを配置 VBox vbRoot = new VBox(); vbRoot.setAlignment(Pos.CENTER); vbRoot.getChildren().addAll(hbLbl,hbText); pStage.setTitle("テキストエリア"); pStage.setWidth(400); pStage.setHeight(300); pStage.setScene(new Scene(vbRoot)); pStage.show(); } } |
2. テキストエリアから値を取得する方法
値を取得するには、getText メソッドを使用します。
構文
TextArea text = new TextArea();
text.getText();
text.getText();