JavaFX 2.0 основы.
Здравствуйте, уважаемые читатели Easy-Code.ru. В данной рубрике мы будем говорить об очень интересной платформе для создания клиентских приложений Rich Internet Applications (RIAs), т.е. приложения, доступные через интернет (на подобии Flash), и обладающие богатой функциональностью, как настольные приложения.
Главное преимущество таких приложений в том, что основные вычисления происходят на стороне клиента, снижая тем самым нагрузку на сервер. Такие приложения более интерактивны и не требуют постоянной связи с сервером.
Hello, World! JavaFX
Лучший способ изучить и понять какой-либо язык — рассмотреть пример (хотя JavaFX — это уже не отдельный язык, а набор библиотек для Java). Поэтому создадим приложение JavaFX. Нам понадобятся, сама JavaFX 2.0 и Netbeans.
- В меню File выберите New Project.
- В категории JavaFX выберите JavaFX Application, далее
- Назовите проект HelloWorld, Готово.
Netbeans создаст проект и файл HelloWorld.java, который будет содержать простую JavaFX программу.
package 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(); } }
Рассмотрим основные компоненты структуры JavaFX приложения.
- Главный класс JavaFX приложения унаследован от javafx.application.Application. Метод start() — главный метод приложения, в отличие от обычного Java приложения, где главный — main().
- В JavaFX приложении присутствуют два главных компонента stage и scene. В примере мы создаем сцену с определенными размерами и делаем ее видимой.
- Программа JavaFX имеет иерархическую структуру в виде дерева, где узлы — элементы программы (кнопка, текст и т.д.). В нашем случае корневой узел — объект StackPane — слой с изменяемым размером, это означает, что размер окна программы можно будет изменять.
- Наш корневой узел содержит одного потомка — кнопку с обработчиком нажатия (для вывода сообщения в консоль).
Запуск приложения
Запустите программу и нажмите на кнопку, в окне вывода Netbeans программа выведет «Hello World!».
В папке dist нашего проекта должны появиться файлы HelloWorld.html — страница со встроенным апплетом, HelloWorld.jnpl — нужен для запуска приложения в браузере через WebStart, HelloWorld.jar — Java архив и папка web-files содержит картинки, использованные в программе и JavaScript файл для загрузки апплета на страницу.
На этом все, в следующих уроках мы продолжим изучение JavaFX.
Здравствуйте.
Я правильно понимаю, что для запуска JavaFX приложения на клиентской машине заранее должен быть установлен JavaFX Runtime? И что он никогда не будет входить в JavaSE6, то есть клиент должен будет его доустанавливать самостоятельно?
И да, продолжайте, пожалуйста 🙂 Русскоязычный учебник по актуальной JavaFX будет очень полезен.
Спасибо
Да, без установленного JavaFX, приложения работать не будут. JavaFX входит в состав Java SE 7, для 6 устанавливается отдельно.
Здравствуйте.
Не могу создать сам проект. Установил плагин, но при создании проекта в разделе JavaFX нет пункта JavaFX Application. Есть только JavaFX Project. Выбираю его, ввожу имя проекта но кнопки next и finish не становятся активными и таким образом не получается создать проект. Что я не так делаю? Подскажите пожалуйста. Использую Java EE 7 последнюю Kepler.
сказали же .. NetBeans запускать а не эклипс
JavaFX не зависит от IDE слава Богу = ))