JavaFX to platforma Java do tworzenia rozbudowanych aplikacji internetowych (RIA), które można uruchamiać na wielu różnych urządzeniach. Jest przeznaczony do wymiany Swing w Javie aplikacje jako framework GUI. Ponadto oferuje więcej funkcji niż Swing. JavaFX to zestaw narzędzi GUI nowej generacji dla . Brzmi interesująco? W tym samouczku JavaFX omówimy szczegółowo tę koncepcję.
Co to jest JavaFX?
JavaFX to biblioteka Java używana do projektowania, tworzenia, testowania i wdrażania wieloplatformowych aplikacji GUI i rozbudowanych aplikacji internetowych (RIA), które mogą działać na wielu różnych urządzeniach.
- Jedną z zachęt do stworzenia JavaFX była wymiana Swinga. Co więcej, JavaFX jest bardziej spójny w swoim projekcie niż Swing.
- Ma więcej funkcji i jest też bardziej nowoczesny, umożliwiając projektowanie GUI przy użyciu plików układu (XML) i stylizowanie ich za pomocą .
- JavaFX integruje również grafikę 2D + 3D, wykresy, audio, wideo i wbudowane aplikacje internetowe w jeden spójny zestaw narzędzi GUI.
Uwaga: Bogate aplikacje internetowe to te aplikacje internetowe, które oferują podobne funkcje i doświadczenie jak aplikacje komputerowe. Zapewniają użytkownikom lepsze wrażenia wizualne w porównaniu do zwykłych aplikacji internetowych.
Teraz, kiedy już wiesz, czym dokładnie jest JavaFX, zapoznaj się z częścią dotyczącą architektury w następnej części tego samouczka JavaFX.
Architektura JavaFX
JavaFX ma różne wbudowane komponenty, które są ze sobą połączone. Zawiera bogaty zestaw interfejsów API, które są więcej niż wystarczające do tworzenia rozbudowanych aplikacji internetowych, które działają konsekwentnie na wielu platformach. Poniższa ilustracja przedstawia architekturę interfejsu API JavaFX.
Przyjrzyjmy się szczegółowo każdemu z tych elementów.
Wykres sceny
Scene Graph jest punktem wyjścia do konstruowania aplikacji JavaFX. To jest hierarchiczne węzłów reprezentujących wszystkie elementy wizualne interfejsu użytkownika aplikacji. Pojedynczy element na wykresie sceny nazywany jest węzłem. Każdy węzeł jest albo węzłem gałęzi, albo węzłem liścia. Węzły rozgałęzione mogą zawierać inne węzły, takie jak ich dzieci, ale węzły liści nie zawierają innych węzłów. Pierwszy węzeł w drzewie nosi nazwę Węzeł główny. Węzeł główny nie ma rodzica.
W programie są obecne różne klasy javafx.scene pakiet, który jest używany do tworzenia, modyfikowania i stosowania niektórych przekształceń w węźle.
Silnik graficzny
Silnik graficzny JavaFX zapewnia obsługę graficzną komponentu wykresu sceny. Zwykle obsługuje zarówno grafikę 2D, jak i 3D. Zapewnia również renderowanie programowe, gdy sprzęt graficzny obecny w systemie nie jest w stanie obsłużyć renderowania przyspieszanego sprzętowo.
Dwa potoki przyspieszane graficznie w JavaFX to:
- Pryzmat - toto wysokowydajna karta graficzna z akceleracją sprzętową, która może renderować zarówno grafikę 2D, jak i 3D.
- Zestaw narzędzi Quantum -Służy do łączenia razem pryzmatu i zestawu narzędzi do okienkowania szkła i udostępnia je dla powyższych warstw w stosie.
Zestaw narzędzi do okienkowania szkła
Jest to warstwa zależna od platformy, która łączy platformę JavaFX z natywnym systemem operacyjnym. Zapewnia natywne usługi systemu operacyjnego, takie jak zarządzanie oknami, zdarzeniami, licznikami czasu i powierzchniami.
Media i silnik sieciowy
- Silnik sieciowy - toto mechanizm przeglądarki internetowej używany do osadzania zawartość do wykresu sceny JavaFX.Obsługuje HTML5, CSS, , DOM i SVG.
- Media Engine - Itudostępnia narzędzia do tworzenia aplikacji multimedialnych, które umożliwiają odtwarzanie multimediów w oknie pulpitu lub na stronach internetowych na obsługiwanych platformach. JavaFX silnik mediów jest oparty na silniku open source znanym jako Serpentyna . Obsługuje odtwarzanie treści wideo i audio.
To sąkomponenty obsługujące API JavaFX. Następna część tego samouczka JavaFX dotyczy struktury aplikacji JavaFX.
Anatomia aplikacji JavaFX
Aplikacja JavaFXjest podzielony hierarchicznie na trzy główne komponenty: Scena, Scena i Węzły.
Etap
Jest to główny kontener i punkt wejścia do aplikacji. Reprezentuje główne okno, a utworzony obiekt etapu jest przekazywany jako argument metody początek() metoda Podanie klasa.Etap ma dwa parametry, Szerokość, i Wysokość, który określa pozycję mianowicie.
Dostępnych jest pięć typów stopni i minus
- Ozdobiony
- Niezdobione
- Przezroczysty
- Unified
- Użyteczność
Musisz zadzwonić do pokazać() , aby wyświetlić zawartość etapu.
Scena
Plik scena to pojemnik na wizualną zawartość sceny. Zawiera elementy interfejsu użytkownika, takie jak widoki obrazów, przyciski, siatki, pola tekstowe. Javafx.scene.Scene klasapakietu javafx.scene zawiera wszystkie metody radzenia sobie z obiektem sceny.Możesz utworzyć scenę, tworząc plik Scena class i przekazanie obiektu layout do konstruktora klasy Scene.
różnica między narzędziami a rozszerzeniami
Wykres sceny i węzły
Istnieje wnajniższy poziom hierarchii. ZA wykres sceny jest drzewiastą strukturą danych (hierarchiczną) reprezentującą zawartość sceny. Możesz myśleć o tym jako o zbiorze różnych węzłów. Gruntownie. za węzeł jest wizualnym / graficznym obiektem wykresu sceny.Plik Węzeł Klasa pakietu javafx.scene reprezentuje pojedynczy węzeł w JavaFX, a ta klasa jest nadklasą wszystkich węzłów.
Teraz, gdy znaszszczegółową strukturę aplikacji JavaFX, dowiedzmy się, jak utworzyć aplikację JavaFX na przykładzie z tego samouczka JavaFX.
Tworzenie aplikacji JavaFX
Zobaczmy, jak wykonać J avaFX programowanie w środowisku IDE Eclipse. Pierwszą rzeczą, którą musisz zrobić, to zainstalować e (fx) clipse wtyczka do Eclipse IDE. e (fx) clipse to zestaw narzędzi i niezbędnych bibliotek, które pomagają w programowaniu JavaFX.
Tutaj tworzymy prostą aplikację JavaFX, która drukuje Witamy w Edurece! na konsoli po kliknięciu przycisku pokazanego na scenie.
pakiet aplikacja 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. public class.stage Main rozszerza aplikację {@Override public void start (Stage primaryStage) {Button btn = new Button () btn.setText ('Say' Welcome to Edureka! '') Btn.setOnAction (new EventHandler () {@Override public void handle ( ActionEvent zdarzenie) {System.out.println ('Witamy w Edureka!')}}) StackPane root = new StackPane () root.getChildren (). Add (btn) Scena scene = new Scene (root, 300, 250) primaryStage .setTitle ('Hello World!') primaryStage.setScene (scene) primaryStage.show ()} public static void main (String [] args) {launch (args)}}
Wynik:
Witamy w Edurece!
Przykładowa aplikacja JavaFX Objaśnienie programu
Spróbujmy w prostych krokach zrozumieć, jak działa ten przykładowy program.
Krok 1: Rozszerz javafx.application.Application i przesłoń metodę start ()
Jak omówiliśmy wcześniej, początek() metoda jest punktem wyjścia aplikacji JavaFX. Import JavaFX.application.Application przesłonić metodę start (). Zastąp metodę start () i przekaż do niej oprzedmiot klasy javafx.stage.Stage.
@Override public void start (Stage primaryStage)
Krok 2: Utwórz przycisk
Możesz utworzyć przycisk, tworząc wystąpienie javafx.scene.control.Button klasa. Dlatego zaimportuj odpowiednią klasę do kodu. Przekaż tekst etykiety przycisku w konstruktorze klasy Button.
Przycisk btn = nowy Button ()
Krok 3: Utwórz wydarzenie dla przycisku
Ta przykładowa aplikacja drukuje tekst zdarzenia na przycisku. Musisz więc utworzyć zdarzenie dla przycisku. W tym celu zadzwoń setOnAction () na przycisku i zdefiniuj anonimową klasę Event Handler jako parametr metody.Wewnątrz tej anonimowej klasy zdefiniuj metodę handle (). Sprawdź kod metody handle ().
btn.setText ('Say' Welcome to Edureka! '') btn.setOnAction (new EventHandler () {@Override public void handle (ActionEvent event) {System.out.println ('Welcome to Edureka!')}
Krok 4: Utwórz układ i dodaj do niego przycisk
JavaFX zazwyczaj udostępnia kilka układów. Zaimplementuj jeden z nich, aby poprawnie zwizualizować widżety. Musisz dodać inne węzły, takie jak przyciski, teksty itp. Do tego układu.
StackPane root = new StackPane () root.getChildren (). Add (btn)
Krok 5: Utwórz scenę
Scena jest na wyższym poziomie w hierarchii struktury aplikacji JavaFx. Musisz więc dodać swój układ do sceny. Możesz go utworzyć, tworząc wystąpienie javafx.scene.Scene class i przekaż obiekt układu do konstruktora klasy sceny.
Scena scena = nowa scena (root, 300, 250)
Krok 5: Przygotuj scenę
Scena jest głównym kontenerem i punktem wejścia do aplikacji. Skorzystaj z metod oferowanych przez javafx.stage.Stage class, aby ustawić atrybuty sceny.Użyj metody show (), aby wyświetlić scenę. Oto kod do tego.
primaryStage.setTitle ('Hello World!') primaryStage.setScene (scene) primaryStage.show ()
Krok 6: Utwórz główną metodę
W ostatnim kroku utwórz główną metodę, w której uruchomisz aplikację, tj. Wywołaj metodę launch () i przekażesz do niej argumenty wiersza poleceń (args).
public static void main (String [] args) {launch (args)}
Krok 7: Uruchom aplikację, aby zobaczyć dane wyjściowe.
Aby uczynić go bardziej interesującym, możesz zmienić interfejs użytkownika aplikacji JavaFX, stosując do niej niestandardowy projekt, taki jak HTML i CSS.
To prowadzi nas do końcaSamouczek JavaFX. Przeszliśmy przez wewnętrzną strukturę aplikacji JavaFX i poznaliśmy kluczowe możliwości jej architektury, cyklu życia i komponentów. Sprawdziliśmy również, jak stworzyć prostą aplikację GUI.
Upewnij się, że ćwiczysz jak najwięcej i cofnij swoje doświadczenie.
Sprawdź autorstwa Edureka, zaufanej firmy zajmującej się edukacją online, z siecią ponad 250 000 zadowolonych uczniów rozsianych po całym świecie. Jesteśmy tutaj, aby pomóc Ci na każdym etapie Twojej podróży, aby zostać oprócz tych pytań do rozmowy kwalifikacyjnej w języku Java, opracowaliśmy program nauczania przeznaczony dla studentów i profesjonalistów, którzy chcą zostać programistą Java.
Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy tego samouczka JavaFX a my skontaktujemy się z Tobą tak szybko, jak to możliwe.