Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class MainWindow extends BorderPane{
- private IntegerProperty clicks = new SimpleIntegerProperty(0);
- private Label clicksLabel;
- public MainWindow() {
- setPrefWidth(600);
- setPrefHeight(400);
- ImageView hmm = new ImageView(ResourceLoader.image("hmm.png"));
- hmm.setPreserveRatio(true);
- hmm.setFitWidth(200);
- hmm.setFitHeight(368);
- setLeft(hmm);
- setMargin(hmm, new Insets(16,16,16,16));
- BorderPane center = new BorderPane();
- center.setPadding(new Insets(16,16,16,16));
- center.setPrefWidth(200);
- center.setPrefHeight(200);
- Label what = new Label("What should we do?");
- what.setFont(new Font("System", 26));
- center.setTop(what);
- center.setAlignment(what, Pos.TOP_CENTER);
- Button open = new Button("Open a new window");
- open.setOnAction(new OtherWindowHandler());
- open.setMaxWidth(Double.MAX_VALUE);
- Button display = new Button("Display a dialog");
- display.setOnAction(e -> {updateClicks(); Dialogs.warning("Example dialog", "Content header", "Content");});
- display.setMaxWidth(Double.MAX_VALUE);
- Button exit = new Button("Exit");
- exit.setOnAction(e -> {System.out.println("Closing app."); Platform.exit();});
- exit.setMaxWidth(Double.MAX_VALUE);
- clicksLabel = new Label("Welcome!");
- clicksLabel.setId("clicksLabel");
- VBox vb = new VBox(open, display, exit, clicksLabel);
- vb.setAlignment(Pos.CENTER);
- vb.setPadding(new Insets(16,16,16,16));
- vb.setSpacing(16);
- center.setCenter(vb);
- //center.setAlignment(vb, Pos.CENTER);
- setCenter(center);
- }
- private void updateClicks() {
- if (!clicksLabel.textProperty().isBound())
- clicksLabel.textProperty().bind(clicks.asString().concat(" clicks."));
- clicks.setValue(clicks.getValue() + 1);
- }
- private class OtherWindowHandler implements EventHandler<ActionEvent>{
- @Override
- public void handle(ActionEvent event) {
- updateClicks();
- ResourceLoader<Parent, FXMLController> loader = new ResourceLoader<>("otherwindow.fxml");
- Parent root = (Parent) loader.root;
- Stage stage = new Stage();
- stage.setScene(new Scene(root));
- stage.show();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement