Skip to content

Instantly share code, notes, and snippets.

@naokirin
Created April 15, 2012 03:37
Show Gist options
  • Save naokirin/2389763 to your computer and use it in GitHub Desktop.
Save naokirin/2389763 to your computer and use it in GitHub Desktop.
JavaFXMemo05
import javafx.application.Application;
import javafx.application.Platform;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.VBox;
import javafx.scene.control.TextArea;
import javafx.scene.control.Button;
import javafx.scene.layout.HBox;
public class JavaFXMemo extends Application {
private Scene scene;
private VBox vbox;
private TextArea textArea;
private TextField commandField;
private Button commandButton;
private HBox commandArea;
public static void main(String[] args){
Application.launch(JavaFXMemo.class, args);
}
@Override
public void start(Stage stage) {
// シーングラフとルートオブジェクトの生成
vbox = new VBox();
scene = new Scene(vbox);
// テキストエリア、テキストフィールド、ボタンの設定
textArea = new TextArea();
commandField = new TextField();
commandButton = new Button("Command");
commandArea = new HBox();
// テキストエリアとコマンドフィールドの大きさをSceneの大きさに合わせて変更するようにする
textArea.minHeightProperty().bind(scene.heightProperty().subtract(commandArea.heightProperty()));
commandField.minWidthProperty().bind(scene.widthProperty().subtract(commandButton.widthProperty()));
// それぞれのオブジェクトを追加
commandArea.getChildren().addAll(commandField, commandButton);
vbox.getChildren().addAll(textArea, commandArea);
// コマンドの実行
commandButton.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent actionEvent) {
if (commandField.getText().equals("quit"))
Platform.exit();
}
});
// Stageの設定
stage.setScene(scene);
stage.setTitle("JavaFXMemo");
stage.setWidth(1024); stage.setHeight(700);
stage.show();
}
@Override
public void stop(){
System.out.println("アプリケーションを終了します...");
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment