Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.spec.appfx1;
- import javafx.application.Application;
- import javafx.application.Platform;
- import javafx.event.ActionEvent;
- import javafx.scene.Scene;
- import javafx.scene.control.Button;
- import javafx.scene.control.Label;
- import javafx.scene.layout.FlowPane;
- import javafx.scene.layout.Pane;
- import javafx.stage.Stage;
- /**
- * JavaFX App
- */
- public class App extends Application {
- private static final int W_WIDTH = 1024;
- private static final int W_HEIGHT = 680;
- private static final int W_POS_X = 10;
- private static final int W_POS_Y = 10;
- private Stage mainWin;
- @Override
- public void start(Stage stage) {
- // var javaVersion = SystemInfo.javaVersion();
- // var javafxVersion = SystemInfo.javafxVersion();
- // Label label = new Label("Hello, JavaFX " + javafxVersion + ", running on Java " + javaVersion + ".");
- // Scene scene = new Scene(new StackPane(label), 640, 480);
- //
- this.mainWin = stage;
- // создаем сцену - указываем панель и размеры сцены
- Scene scene = new Scene(createPane(), W_WIDTH, W_HEIGHT);
- // устанавливаем сцену
- stage.setScene(scene);
- // заголовок окна
- stage.setTitle("JavaFX SAMPLE1");
- // установка позиции окна (x,y) - левый верхний угол
- stage.setX(W_POS_X);
- stage.setY(W_POS_Y);
- // запретить менять размер!!!
- stage.setResizable(false);
- // показываем окно на экране
- stage.show();
- }
- // создаем панель и наполняем элементами управления (компонентами UI)
- private Pane createPane() {
- //
- FlowPane p = new FlowPane();
- // расстояние между элементами управления внутри панели
- p.setHgap(10);
- Label label1 = new Label("Hello, JavaFX! ");
- Button b1 = new Button("Ok");
- // подключаем обработчик событий
- b1.setOnAction(this::onOkButton); // ссылка на метод ::
- // 1) Exit
- Button exitButton = new Button("Exit");
- exitButton.setOnAction(this::onExitButton); // ссылка на метод ::
- // 2) FullScreen
- Button fullScrButton = new Button("FullScreen!");
- fullScrButton.setOnAction(this::onFullScrButton); // ссылка на метод ::
- // добавляем элементы управления в панель p
- p.getChildren().addAll(label1, b1, exitButton, fullScrButton);
- return p;
- }
- // onOkButton - вызывается при нажатии Ок
- // ActionEvent - событие
- private void onOkButton(ActionEvent t) {
- // получаем источник собтия
- System.out.println("t.getSource().getClass()=" + t.getSource().getClass());
- }
- //
- public static void main(String[] args) {
- launch();
- }
- //
- private void onExitButton(ActionEvent t) {
- // используем класс Platform библ-ки JavaFx
- Platform.exit();
- }
- private void onFullScrButton(ActionEvent t) {
- System.out.println("onFullScrButton!!!");
- mainWin.setMaximized(true);
- mainWin.setFullScreen(true);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement