JavaFX ボタンを押すとラベルの文字が切り替わる
JavaFXを用いてボタンを押すとラベルの文字が切り替わるアプリケーションを作りました。下のサイトを参考にしました。
カウンターアプリを作る – Teaching Programming
package application; import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.geometry.Insets; import javafx.geometry.Pos; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.scene.layout.VBox; import javafx.scene.text.Font; import javafx.stage.Stage; public class Button1 extends Application implements EventHandler<ActionEvent> { private Label label; private Button btnOk; private String s1 = "Hello, Java!"; private String s2 = "Good, JavaFX!"; @Override public void start(Stage stage) throws Exception{ stage.setTitle("MyButton"); stage.setWidth(250); stage.setHeight(200); label = new Label(s1); label.setFont(new Font(12)); //ボタンの機能 btnOk = new Button("ボタン"); btnOk.setPrefWidth(120); btnOk.setOnAction(this); //配置 VBox root = new VBox(); root.setAlignment(Pos.CENTER); root.setPadding(new Insets(10, 10, 10, 10)); root.setSpacing(20.0); root.getChildren().addAll(label, btnOk); stage.setScene(new Scene(root)); stage.show(); } public static void main(String[] args) { launch(args); } //ラベルの文字を切り替える @Override public void handle(ActionEvent event) { if(label.getText().equals(s1)) { label.setText(s2); }else { label.setText(s1); } } }