рдПрдХ рд╡рд┐рдВрдбреЛрдЬ рдкреАрд╕реА рдкрд░ рдУрд░реЗрдХрд▓ рджреНрд╡рд╛рд░рд╛ "рдЧреЗрдЯрд┐рдВрдЧ рд╕реНрдЯрд╛рд░реНрдЯ рд╡рд┐рдж рдЬрд╛рд╡рд╛рдПрдлрдПрдХреНрд╕" рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рд╕реЗ рд╣реИрд▓реЛрд╡рд░реНрд▓реНрдбред рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╡рд┐рдВрдбреЛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХрд╛ рд╡рд┐рдХрд╛рд╕ред рдЕрднреА рднреА рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХреА рдЧрд▓рддрдлрд╣рдореА рдХреЗ рд╕рд╛рде рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬрд┐рд╕рдореЗрдВ рдЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдХреЛрдб рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдкрд┐рдЫрд▓реА рдкреЛрд╕реНрдЯ рдореЗрдВ, рдпрд╣
JavaFX рдХреЗ рд╕рд╛рде рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рдкрд╣рд▓реЗ рдЦрдВрдб рд╕реЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдХрд▓рд╛ред
HelloWorld.javapackage helloworld; import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.layout.StackPane; import javafx.stage.Stage; public class HelloWorld extends Application { public static void main(String[] args) { launch(args); } @Override public void start(Stage primaryStage) { primaryStage.setTitle("Hello World!"); Button btn = new Button(); btn.setText("Say 'Hello World'"); btn.setOnAction(new EventHandler<ActionEvent>() { @Override public void handle(ActionEvent event) { System.out.println("Hello World!"); } }); StackPane root = new StackPane(); root.getChildren().add(btn); primaryStage.setScene(new Scene(root, 300, 250)); primaryStage.show(); } }
рдЙрджрд╛рд╣рд░рдг рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛, рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЬрд╛рд░ рдореЗрдВ рдкреИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬрд╛рд░ рд╕реЗ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ред
рдХрдорд╛рдВрдб рд▓рд╛рдЗрди @"C:\Program Files\Java\jdk1.7.0_40\bin\javac" -d out -classpath "C:\Program Files\Java\jre7\lib\jfxrt.jar" src\helloworld\HelloWorld.java @"C:\Program Files\Java\jdk1.7.0_40\bin\java" -classpath "C:\Program Files\Java\jre7\lib\jfxrt.jar;.\out" helloworld.HelloWorld @"C:\Program Files\Java\jdk1.7.0_40\bin\javafxpackager" -createjar -appclass helloworld.HelloWorld -srcdir .\out -outfile HelloWorld -v @"C:\Program Files\Java\jre7\bin\java.exe" -jar HelloWorld.jar @pause
рдкреНрд░рддреНрдпреЗрдХ рдХрдорд╛рдВрдб рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ .cmd рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЫрд┐рдкрд╛ рд╣реБрдЖ рдерд╛ред рдордЬреЗрджрд╛рд░, рд▓реЗрдХрд┐рди рд╕реНрдкрд╖реНрдЯред рд╣рдо рдЗрди рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред
рджреВрд╕рд░реЗ рдЦрдВрдб рдореЗрдВ, рдпрд╣ рдПрдХ рд▓реЙрдЧрд┐рди рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдлреЙрд░реНрдо рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ
рдмреНрд▓реИрдХрдЬреЗрдЯ рдирд┐рдпрдВрддреНрд░рдг рд╣реИред рдЖрдЗрдП рдореМрдЬреВрджрд╛ рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ, рдкреИрдХреЗрдЬ рдФрд░ & mdash helloworld рдХреЛ рдЫреЛрдбрд╝ рджреЗрдВред jfxpub-get_started NetBeans рдореЗрдВ рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рдо рдкрд╣рд▓реЗ рддреАрди рдкреИрд░рд╛рдЧреНрд░рд╛рдл "рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдБ" рд╕реЗ рдЫреЛрдбрд╝рддреЗ рд╣реИрдВ, рдФрд░ рдЪреМрдерд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ 2-1 рд╕реЗ рдХреЛрдб рдХреЗ рд╕рд╛рде "рд╕реНрдЯрд╛рд░реНрдЯ" рдкрджреНрдзрддрд┐ рдХреА рдмреЙрдбреА рдХреЛ рд╣рдЯрд╛рдХрд░, рдореМрдЬреВрджрд╛ HelloWorld.java рдлрд╝рд╛рдЗрд▓ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ:
@Override public void start(Stage primaryStage) { primaryStage.setTitle("JavaFX Welcome"); primaryStage.show(); }
рдХрд╛рд░реНрдп 29 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ 18 рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рдкреНрд░рд╛рдЗрдорд░реАрд╕реНрдЯреЗрдЬ рд╣реЗрдбрд░ рдХреЛ рдмрджрд▓рдирд╛ рд╣реИред рдЗрд╕ рд░реВрдк рдореЗрдВ, рдлрд╝рд╛рдЗрд▓ рд╕рдВрдХрд▓рд┐рдд рдФрд░ рдЪрд▓реЗрдЧреА, рд▓реЗрдХрд┐рди рдРрд╕реА рдмрдХрд╡рд╛рд╕ рдирд┐рдХрд▓ рдЬрд╛рдПрдЧреА, рдХреБрдЫ рднреА рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рд╣реИред рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдЖрдЧреЗ GridPane рд▓реЗрдЖрдЙрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рдирд┐рдпрдВрддреНрд░рдг рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрд▓рдо рдФрд░ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рд╣рдо рдкреНрд░рд╛рдердорд┐рдХ рд╕реНрддрд░ рд╕реЗ рдкрд╣рд▓реЗ рдХреЛрдб рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред ():
GridPane grid = new GridPane(); grid.setAlignment(Pos.CENTER); grid.setHgap(10); grid.setVgap(10); grid.setPadding(new Insets(25, 25, 25, 25)); Scene scene = new Scene(grid, 300, 275); primaryStage.setScene(scene)
рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдВрдХрд▓рди рдирд╣реАрдВ рд╣реЛрдЧрд╛:
рд╕рдВрдХрд▓рди рдХреА рддреНрд░реБрдЯрд┐рдпрд╛рдВ src\helloworld\HelloWorld.java:18: error: cannot find symbol GridPane grid = new GridPane(); ^ symbol: class GridPane location: class HelloWorld src\helloworld\HelloWorld.java:18: error: cannot find symbol GridPane grid = new GridPane(); ^ symbol: class GridPane location: class HelloWorld src\helloworld\HelloWorld.java:19: error: cannot find symbol grid.setAlignment(Pos.CENTER); ^ symbol: variable Pos location: class HelloWorld src\helloworld\HelloWorld.java:22: error: cannot find symbol grid.setPadding(new Insets(25, 25, 25, 25)); ^ symbol: class Insets location: class HelloWorld 4 errors
рдХреБрд▓: GridPane, Pos, рдФрд░ Insets рдХрдХреНрд╖рд╛рдПрдВ рдирд╣реАрдВ рдорд┐рд▓реАрдВред рдФрд░ рдЙрдирдХреЗ рд▓рд┐рдП рдХрд╣рд╛рдБ рджреЗрдЦрдирд╛ рд╣реИ? рдореБрдЭреЗ рдкрддрд╛ рднреА рдирд╣реАрдВ рдерд╛ред рд▓реЗрдХрд┐рди рдУрд░реЗрдХрд▓ рд╕рд╛рдЗрдЯ рдкрд░ рдореБрдЭреЗ рд╕рд┐рд░реНрдл рдРрд╕рд╛
"рд╕рдВрджрд░реНрдн" рдорд┐рд▓рд╛ ред рдЗрд╕рд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐
GridPane - javafx.scene.layout рдореЗрдВ рдХрдХреНрд╖рд╛
рдЧреНрд░рд┐рдбрдкреИрди рдЕрдкрдиреЗ рдмрдЪреНрдЪреЛрдВ рдХреЛ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдФрд░ рд╕реНрддрдВрднреЛрдВ рдХреЗ рдПрдХ рд▓рдЪреАрд▓реЗ рдЧреНрд░рд┐рдб рдХреЗ рднреАрддрд░ рджреЗрддрд╛ рд╣реИред
рдкрдж - javafx.geometry рдореЗрдВ Enum
рдКрд░реНрдзреНрд╡рд╛рдзрд░ рдФрд░ рдХреНрд╖реИрддрд┐рдЬ рд╕реНрдерд┐рддрд┐ рдФрд░ рд╕рдВрд░реЗрдЦрдг рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯред
рдЗрдирд╕реЗрдЯреНрд╕ - javafx.geometry рдореЗрдВ рдХреНрд▓рд╛рд╕
рдПрдХ рдЖрдпрддрд╛рдХрд╛рд░ рдХреНрд╖реЗрддреНрд░ рдХреЗ 4 рдкрдХреНрд╖ рдХреЗ рд▓рд┐рдП рдЕрдВрджрд░ рдХреЗ рд╕реЗрдЯ рдХрд╛ рдПрдХ рд╕реЗрдЯ
рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдЖрдпрд╛рдд рд▓рд╛рдЗрдиреЗрдВ рдЬреЛрдбрд╝рдирд╛:
import javafx.scene.layout.GridPane; import javafx.geometry.*;
рдЕрдм рдлрд╝рд╛рдЗрд▓ рд╕рдВрдХрд▓рд┐рдд рдФрд░ рдЪрд▓реЗрдЧреА, рд▓реЗрдХрд┐рди рдЕрднреА рднреА рдХреБрдЫ рднреА рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рд╣реИред рд╣рдо рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рднрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред рдЧреНрд░рд┐рдб рддрд╛рд▓рд┐рдХрд╛ рдХреА рдкреИрдбрд┐рдВрдЧ рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд▓рд╛рдЗрди рдХреЗ рдмрд╛рдж рдХреЛрдб рдЬреЛрдбрд╝реЗрдВ, рдЬреЛ рдХрд┐ рд╕реАрди рд╕реАрди = рдирдпрд╛ рд╕реАрди (рдЧреНрд░рд┐рдб, 300, 275) рд╕реЗ рдкрд╣рд▓реЗ рд╣реИред
HelloWorld.java рдХреЗ рд▓рд┐рдП рдПрдбрд┐рдЯрд┐рд╡ Text scenetitle = new Text("Welcome"); scenetitle.setFont(Font.font("Tahoma", FontWeight.NORMAL, 20)); grid.add(scenetitle, 0, 0, 2, 1); Label userName = new Label("User Name:"); grid.add(userName, 0, 1); TextField userTextField = new TextField(); grid.add(userTextField, 1, 1); Label pw = new Label("Password:"); grid.add(pw, 0, 2); PasswordField pwBox = new PasswordField(); grid.add(pwBox, 1, 2); Button btn = new Button("Sign in"); HBox hbBtn = new HBox(10); hbBtn.setAlignment(Pos.BOTTOM_RIGHT); hbBtn.getChildren().add(btn); grid.add(hbBtn, 1, 4); final Text actiontarget = new Text(); grid.add(actiontarget, 1, 6); btn.setOnAction(new EventHandler<ActionEvent>() { @Override public void handle(ActionEvent e) { actiontarget.setFill(Color.FIREBRICK); actiontarget.setText("Sign in button pressed"); } });
рд╣рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдПрдХ рд▓рдВрдмреА рд╢реАрдЯ рдорд┐рд▓рддреА рд╣реИред рд▓реЗрдХрд┐рди рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд░рд┐рдЪрд┐рдд рдФрд░ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп рд╣реИрдВред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкрд╛рда, рдлрд╝реЙрдиреНрдЯ, рд▓реЗрдмрд▓, рд░рдВрдЧ рдФрд░ рдЙрдирдХреЗ рдХреБрдЫ рдорд┐рддреНрд░ рдХреМрди рд╣реИрдВред рд╣рдо рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рд╕рдВрджрд░реНрдн рдкреБрд╕реНрддрдХ рдореЗрдВ рдЕрдлрд╡рд╛рд╣ рдХрд░реЗрдВрдЧреЗ рдФрд░ рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдЙрдирдХреА рдорд╛рддреГрднреВрдорд┐ рдХрд┐рд╕ рдкреИрдХреЗрдЬ рдореЗрдВ рд╣реИред рдЖрдпрд╛рдд рдЬреЛрдбрд╝реЗрдВ:
import javafx.scene.text.*; import javafx.scene.control.*; import javafx.scene.paint.*; import javafx.scene.layout.HBox;
рдЗрд╕рд▓рд┐рдП рдпрд╣рд╛рдВ рдореЗрд░рд╛ рдпрд╣рд╛рдВ рд╕рд┐рддрд╛рд░реЛрдВ рдХреЗ рдкреНрд░рддрд┐ рдордирдорд╛рдирд╛ рд░рд╡реИрдпрд╛ рд╣реИред рд╢реИрдХреНрд╖рд┐рдХ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдРрд╕рд╛ рдХрд░реЗрдЧрд╛ред
рдЕрдм рд╕рдВрдХрд▓рди рдФрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ:
- javafx.application.Application JavaFX рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдореБрдЦреНрдп рд╡рд░реНрдЧ рд╣реИред
- рдЗрд╕рдХреА рд╢реБрд░реБрдЖрдд () рд╡рд┐рдзрд┐ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдмрд┐рдВрджреБ рд╣реИред
- рд╕реНрдЯреЗрдЬ рдХреНрд▓рд╛рд╕ рдпреВрдЬрд░ рдЗрдВрдЯрд░рдлреЗрд╕ (рд╡рд┐рдВрдбреЛ) рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢реАрд░реНрд╖-рд╕реНрддрд░реАрдп рдХрдВрдЯреЗрдирд░ рд╣реИред
- рджреГрд╢реНрдп рд╡рд░реНрдЧ рдЕрдЧрд▓реЗ рд╕реНрддрд░ рдХрд╛ рдХрдВрдЯреЗрдирд░ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рд╕рднреА рддрддреНрд╡ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
- рд╣рдорд╛рд░рд╛ рджреГрд╢реНрдп рдЧреНрд░рд┐рдбрдкреИрди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдЬреЛ рдХрд┐ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдХреА рддрд░рд╣ рд╣реИ, рдЬрд┐рд╕рдХреА рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рдЖрдк рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рддрддреНрд╡реЛрдВ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдПрдЪрдЬреАрдПрдкреА рдФрд░ рд╡реАрдЬреАрдПрдкреА рдХреНрд░рдорд╢рдГ рд╕реНрддрдВрднреЛрдВ рдФрд░ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рдХреА рдЦрд╛рдИ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдкреИрдбрд┐рдВрдЧ рдЯреЗрдмрд▓ рдХреЗ рдХрд┐рдирд╛рд░реЗ рдФрд░ рдЦрд┐рдбрд╝рдХреА рдХреЗ рдХрд┐рдирд╛рд░реЗ рдХреЗ рдмреАрдЪ рдХреЗ рдЕрдВрддрд░ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЯреЗрдмрд▓ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдЭреЗрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдЧрд╛ред рд▓рд╛рдЗрди "рдЧреНрд░рд┐рдб.рд╕реЗрдЯрдЧрд╛рдЗрдбрд▓рд▓рд╛рдЗрдВрд╕рд╡рд┐рдЬреБрдЕрд▓ (рдЯреНрд░реВ)"; рд╡рд┐рдВрдбреЛ рдореЗрдВ рдЯреЗрдмрд▓ рджрд┐рдЦрд╛рдПрдЧрд╛ - рдЗрд╕рдХреА рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рджреГрд╢реНрдпрдорд╛рди рдмрдирд╛рдПрдВред
- рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдХрд┐рд╕реА рддрд╛рд▓рд┐рдХрд╛ рдХреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдФрд░ рд╕реНрддрдВрднреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЗрд╕рдХреЗ рдЧреБрдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рд╣рдо рдХреБрдЫ рддрддреНрд╡реЛрдВ рдХреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреЛрд╢рд┐рдХрд╛рдУрдВ (рдПрдХ рдХреЙрд▓рдо рдФрд░ рдкрдВрдХреНрддрд┐ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ) рдореЗрдВ рд░рдЦрддреЗ рд╣реИрдВ, рдФрд░ рддрд╛рд▓рд┐рдХрд╛ "рд╕реНрд╡рдпрдВ" рд╡рд╛рдВрдЫрд┐рдд рд╕рдВрдЦреНрдпрд╛ рддрдХ рдмрдврд╝рддреА рд╣реИред рдЧреНрд░рд┐рдб.рдбреИрдб рд╡рд┐рдзрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реЗрд▓ рдореЗрдВ рдПрдХ рддрддреНрд╡ (рдкрд╣рд▓рд╛ рдкреИрд░рд╛рдореАрдЯрд░) (рджреВрд╕рд░рд╛ рдФрд░ рддреАрд╕рд░рд╛ рдкреИрд░рд╛рдореАрдЯрд░ - рд╕реНрддрдВрдн, рдкрдВрдХреНрддрд┐) рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдЖрдк рдЪреМрдереЗ рдФрд░ рдкрд╛рдВрдЪрд╡реЗрдВ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рдЪрд┐рддреНрд░рдХрдерд╛ рдЬреЛрдбрд╝рддреЗ рд╕рдордп) - рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдХрд┐рддрдиреЗ рдХреЙрд▓рдо рдФрд░ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред
- рдЬрд╛рд╡рд╛ рдлрд╛рдЗрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп () рд╡рд┐рдзрд┐ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ рдпрджрд┐ JAR рдлрд╛рдЗрд▓ рдХреЛ jafafxpackager (рдпрд╣ JAR рдлрд╛рдЗрд▓ рдореЗрдВ JavaFX рд▓рд╛рдВрдЪрд░ рдХреЛ рдПрдореНрдмреЗрдб рдХрд░рддрд╛ рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЛ рдЬрд╛рд╡рд╛рдПрдлрдПрдХреНрд╕ рд▓реЙрдиреНрдЪрд░ рдХреЗ рдмрд┐рдирд╛ рдмрдирд╛рдИ рдЧрдИ рдПрдХ рдЬреЗрдПрдЖрд░ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЖрдИрдбреАрдИ рдореЗрдВ рдЬрд╛рд╡рд╛рдПрдлрдПрдХреНрд╕ рдХреЗ рд╕рд╛рде рдЕрдкреВрд░реНрдг рдПрдХреАрдХрд░рдг рдХреЗ рд╕рд╛рдеред рдлрд┐рд░ рд╕реЗ, Swing рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ JavaFX рдХреЛрдб рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдореБрдЦреНрдп () рд╡рд┐рдзрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
- HBox рдПрдХ рдРрд╕рд╛ рд╡рд┐рд╢реЗрд╖ рд╕реЙрдХреЗрдЯ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЗрд╕ рд╕реЙрдХреЗрдЯ рдореЗрдВ рдбрд╛рд▓реЗ рдЧрдП рдПрдХ рдмрдЯрди рдХреЗ рд╕рдВрд░реЗрдЦрдг рдХреЛ рдмрд╛рдХреА рддрддреНрд╡реЛрдВ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ - рджрд╛рд╣рд┐рдиреЗ рдХрд┐рдирд╛рд░реЗ рд╕реЗред
- рдмрд╛рдХреА рдХреЛрдб рд╕реЗ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рд╣реИред
рдпрд╣ рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд╕рд╛рде рд╕рднреА рдХреЛ рд░рдВрдЧ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рд╣реИ, рдПрдлрдПрдХреНрд╕рдПрдордПрд▓ рдХреЗ рд╕рд╛рде рдбреНрд░рд╛ рдХрд░реЗрдВ рдФрд░ рдЗрди рдкрддреНрд░реЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдПрдХ рдЖрд╡реЗрджрди рдореЗрдВ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░реЗрдВред
рдФрд░ рдПрдХ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдЬреЛ рдореИрдВ рдЕрдВрдд рдореЗрдВ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдкрд┐рдЫрд▓реА рдкреЛрд╕реНрдЯ рдореЗрдВ, рдореИрдВрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдерд╛ рдХрд┐ рдпрджрд┐ рдЖрдк рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб рдореЗрдВ рдкреИрдХреЗрдЬ HelloWorld рдХрд╣рддреЗ рд╣реИрдВ, рддреЛ HelloWorld рдлрд╝реЛрд▓реНрдбрд░ ./out рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕рдВрдХрд▓рди рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рд╢реБрд░реВ рдирд╣реАрдВ рд╣реЛрдЧрд╛ - рд╡рд░реНрдЧ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛ред рдкреИрдХреЗрдЬ рдирд╛рдо рдореЗрдВ рд╡рд░реНрдгреЛрдВ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рдареАрдХ рдХрд░реЗрдВ - рд╕рдм рдХреБрдЫ рдлрд┐рд░ рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдорд╛рдорд▓рд╛ "рдЧрд▓рдд" рд░рд╣реЗрдЧрд╛ред рд╡рд┐рдВрдбреЛрдЬ рдлрд╝реЛрд▓реНрдбрд░ рдирд╛рдо рд░рдЬрд┐рд╕реНрдЯрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдПрдЧрд╛ рдпрд╛ рдирд╛рдо рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ред рдпрд╣ HelloWorld.class рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓реЙрдиреНрдЪ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рдЕрдм .JAR рдореЗрдВ рдкреИрдХ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╕рд╛рдордиреЗ рдЖрдПрдВрдЧреАред рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ, рдлрд╝реЛрд▓реНрдбрд░ рджреЛ рд╡рд░реНрдгреЛрдВ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЧрд▓рдд (рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдХреЗ рдмрд┐рдирд╛) рдХреЗ рд╕рд╛рде рд╣реЛрдЧрд╛, рдФрд░ рдпрд╣ рдЖрд╡реЗрджрди рдХреЗ рдореБрдЦреНрдп рд╡рд░реНрдЧ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред рдЖрдкрдХреЛ ./out/HelloWorld рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдорд┐рдЯрд╛рдирд╛ рд╣реЛрдЧрд╛, recompile рдФрд░ create рдХрд░рдирд╛ рд╣реЛрдЧрд╛ .jar