Advertisement
sergAccount

Untitled

Feb 22nd, 2021
595
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.68 KB | None | 0 0
  1. package com.spec.appfx1;
  2.  
  3. import javafx.application.Application;
  4. import javafx.event.ActionEvent;
  5. import javafx.scene.Scene;
  6. import javafx.scene.control.Button;
  7. import javafx.scene.control.Label;
  8. import javafx.scene.layout.FlowPane;
  9. import javafx.scene.layout.Pane;
  10. import javafx.scene.layout.StackPane;
  11. import javafx.stage.Stage;
  12.  
  13.  
  14. /**
  15.  * JavaFX App
  16.  */
  17. public class App extends Application {
  18.    
  19.     private static final int W_WIDTH = 1024;
  20.     private static final int W_HEIGHT = 680;
  21.    
  22.     private static final int W_POS_X = 10;
  23.     private static final int W_POS_Y = 10;
  24.  
  25.     @Override
  26.     public void start(Stage stage) {
  27. //        var javaVersion = SystemInfo.javaVersion();
  28. //        var javafxVersion = SystemInfo.javafxVersion();
  29. //        Label label = new Label("Hello, JavaFX " + javafxVersion + ", running on Java " + javaVersion + ".");
  30. //        Scene scene = new Scene(new StackPane(label), 640, 480);  
  31.         // создаем сцену - указываем панель и размеры сцены
  32.         Scene scene = new Scene(createPane(), W_WIDTH, W_HEIGHT);          
  33.         // устанавливаем сцену
  34.         stage.setScene(scene);
  35.         // заголовок окна
  36.         stage.setTitle("JavaFX SAMPLE1");
  37.         // установка позиции окна (x,y) - левый верхний угол
  38.         stage.setX(W_POS_X);
  39.         stage.setY(W_POS_Y);
  40.         // запретить менять размер!!!
  41.         stage.setResizable(false);        
  42.         // показываем окно на экране
  43.         stage.show();
  44.     }
  45.     // создаем панель и наполняем элементами управления (компонентами UI)
  46.     private Pane createPane() {
  47.         //
  48.         FlowPane p = new FlowPane();        
  49.         // расстояние между элементами управления внутри панели
  50.         p.setHgap(10);
  51.         Label label1 = new Label("Hello, JavaFX! ");
  52.         Button b1 = new Button("Ok");
  53.         // подключаем обработчик  событий
  54.         b1.setOnAction(this::onOkButton); // ссылка на метод ::
  55.        
  56.         p.getChildren().addAll(label1, b1);        
  57.         return p;
  58.     }
  59.     // onOkButton - вызывается при нажатии Ок
  60.     // ActionEvent - событие
  61.     private void onOkButton(ActionEvent t) {
  62.         // получаем источник собтия
  63.         System.out.println("t.getSource().getClass()=" + t.getSource().getClass());        
  64.     }
  65.     //
  66.     public static void main(String[] args) {
  67.         launch();
  68.     }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement