JavaFX-zelfstudie: hoe maak ik een applicatie aan?



Deze JavaFX-zelfstudie geeft een korte inleiding tot het JavaFX-platform, de functies en de architectuur ervan en helpt u bij het maken van uw eerste JavaFX-toepassing

De JavaFX is een Java-platform voor het maken van rijke internettoepassingen (RIA's) die op een groot aantal verschillende apparaten kunnen worden uitgevoerd. Het is bedoeld om Swing in Java applicaties als een GUI-framework. Het biedt ook meer functionaliteiten dan Swing. JavaFX is de GUI-toolkit van de volgende generatie voor de . Klinkt interessant? Laten we in deze JavaFX-zelfstudie het concept in detail onderzoeken.

Wat is JavaFX? S

JavaFX is een Java-bibliotheek die wordt gebruikt voor het ontwerpen, maken, testen en implementeren van cross-platform GUI-applicaties en rijke internettoepassingen (RIA's) die op een breed scala aan apparaten kunnen worden uitgevoerd.





  • Een stimulans om JavaFX te maken, was het vervangen van Swing. Bovendien is JavaFX consistenter in zijn ontwerp dan Swing.
  • Het heeft meer functies en is ook moderner, zodat u een GUI kunt ontwerpen met lay-outbestanden (XML) en deze kunt stylen .
  • JavaFX integreert ook 2D + 3D-afbeeldingen, grafieken, audio, video en ingebedde webtoepassingen in één samenhangende GUI-toolkit.

Opmerking: Rich Internet-applicaties zijn die webapplicaties die vergelijkbare functies en ervaring bieden als desktopapplicaties. Ze bieden een betere visuele ervaring in vergelijking met de normale webapplicaties voor de gebruikers.

Nu u weet wat JavaFX precies is, kunt u het architectuurgedeelte ervan bekijken in het volgende deel van deze JavaFX-zelfstudie.



JavaFX-architectuur

JavaFX heeft verschillende ingebouwde componenten die met elkaar zijn verbonden. Het bevat een rijke set API's die meer dan voldoende zijn om rijke internettoepassingen te ontwikkelen die consistent op veel platforms worden uitgevoerd. De volgende afbeelding toont de architectuur van de JavaFX API.

Architectuur - JavaFX-zelfstudie - Edureka

Laten we elk van deze componenten in detail bekijken.



Scene Grafiek

Scene Graph is het startpunt van het bouwen van een JavaFX-applicatie. Het is hiërarchisch van knooppunten die alle visuele elementen van de gebruikersinterface van de app vertegenwoordigen. Een enkel element in een scènegrafiek wordt een knooppunt genoemd. Elk knooppunt is een filiaalknooppunt of een bladknooppunt. Branch-knooppunten kunnen andere knooppunten bevatten, zoals hun kinderen, maar Leaf-knooppunten bevatten geen andere knooppunten. Het eerste knooppunt in de boom wordt de root-knooppunt. Een hoofdknooppunt heeft geen ouder.

java split string meerdere scheidingstekens

Er zijn verschillende klassen aanwezig in javafx.scene pakket dat wordt gebruikt voor het maken, wijzigen en toepassen van enkele transformaties op het knooppunt.

Grafische engine

De grafische engine JavaFX biedt de grafische ondersteuning voor de scènegrafiekcomponent. Het ondersteunt over het algemeen zowel 2D- als 3D-afbeeldingen. Biedt ook de softwareversie wanneer de grafische hardware die op het systeem aanwezig is, geen ondersteuning biedt voor hardwareversnelde weergave.

De twee grafische versnelde pijplijnen in de JavaFX zijn:

  • Prisma - hetis een krachtige grafische hardwareversnelling die zowel 2D- als 3D-afbeeldingen kan weergeven.
  • Quantum Toolkit -Het wordt gebruikt om de toolkit voor prisma's en glasramen aan elkaar te binden en maakt ze beschikbaar voor de bovenstaande lagen in de stapel.

Toolkit voor glazen vensters

Het is een platformafhankelijke laag die het JavaFX-platform verbindt met het native besturingssysteem. Het biedt native services van het besturingssysteem, zoals het beheren van vensters, gebeurtenissen, timers en oppervlakken.

Media en webengine

  • Web Engine - Itis een webbrowser-engine die wordt gebruikt om het inhoud naar een JavaFX-scènegrafiek.Het ondersteunt HTML5, CSS, , DOM en SVG.
  • Media Engine - Itbiedt tools om mediatoepassingen te maken die het afspelen van media in het bureaubladvenster of binnen een webpagina op ondersteunde platforms mogelijk maken. JavaFX media-engine is gebaseerd op een open-source engine die bekend staat als een Wimpel . Het ondersteunt het afspelen van video- en audiocontent.

Dit zijn decomponenten die de JavaFX API ondersteunen. Het volgende deel van deze JavaFX-tutorial gaat over de JavaFX-applicatiestructuur.

Anatomie van een JavaFX-applicatie

JavaFX-applicatieis hiërarchisch verdeeld in drie hoofdcomponenten: Stage, Scene en Nodes.

Stadium

Het is de hoofdcontainer en het toegangspunt van de applicatie. Het vertegenwoordigt het hoofdvenster en het gemaakte stageobject wordt doorgegeven als een argument van het begin() methode van Toepassing klasse.Een trap heeft twee parameters, Breedte, en Hoogte, die de positie namelijk bepaalt.

Er zijn vijf soorten fasen beschikbaar & minus

  • Versierd
  • Onversierd
  • Transparant
  • Verenigd
  • Nut

Je moet de tonen() methode om de inhoud van een fase weer te geven.

Tafereel

De tafereel is een container voor de visuele inhoud van het podium. Het bevat de UI-elementen, zoals afbeeldingsweergaven, knoppen, rasters, tekstvakken. Javafx.scene.Scene klassevan het pakket javafx.scene biedt alle methoden om met een scèneobject om te gaan.U kunt een scène maken door het Tafereel class-object en het layout-object doorgeven aan de klasse-constructor Scene.

Scènegrafiek en knooppunten

Het bestaat op delaagste niveau van de hiërarchie. EEN scene grafiek is een boomachtige datastructuur (hiërarchisch) die de inhoud van een scène weergeeft. Je kunt het zien als de verzameling van verschillende knooppunten. Eigenlijk. een knooppunt is een visueel / grafisch object van een scènegrafiek.De Knooppunt Klasse van het pakket javafx.scene vertegenwoordigt een enkel knooppunt in JavaFX en deze klasse is de superklasse van alle knooppunten.

Nu je destructuur van een JavaFX-applicatie in detail, laten we zien hoe we een JavaFX-applicatie kunnen maken met een voorbeeld in deze JavaFX-zelfstudie.

Een JavaFX-applicatie maken

Laten we eens kijken hoe je J kunt uitvoeren avaFX programmeren op IDE Eclipse. Het eerste dat u moet doen, is het installeren e (fx) clipse plug-in voor Eclipse IDE. e (fx) clipse is een set tools en noodzakelijke bibliotheken die u helpen bij het uitvoeren van de JavaFX-programmering.

Hier maken we een eenvoudige JavaFX-applicatie die afdrukt Welkom bij Edureka! op de console door op de knop te klikken die op het podium wordt weergegeven.

pakket applicatie 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 Main extends Application {@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-gebeurtenis) {System.out.println ('Welcome to Edureka!')}}) StackPane root = nieuwe StackPane () root.getChildren (). Add (btn) Scene scene = nieuwe scene (root, 300, 250) primaryStage .setTitle ('Hallo wereld!') primaryStage.setScene (scene) primaryStage.show ()} public static void main (String [] args) {launch (args)}}

Uitgang:

Welkom bij Edureka!

JavaFX-toepassingsvoorbeeld Programma-uitleg

Laten we in eenvoudige stappen proberen te begrijpen hoe dit voorbeeldprogramma werkt.

Stap 1: Breid javafx.application.Application uit en overschrijf de start () -methode

Zoals we eerder hebben besproken, begin() methode is het startpunt van JavaFX Application. Importeren JavaFX.application.Application om de start () methode te overschrijven. Overschrijf de start () - methode en geef er een o aan doorbject van de klas javafx.stage.Stage.

@Override public void start (Stage primaryStage)

Stap 2: Maak een knop

U kunt een knop maken door het javafx.scene.control.Button klasse. Importeer daarom de relevante klasse in code. Geef de tekst van het knoplabel door in de constructor van de klasse Button.

Knop btn = nieuwe knop ()

Stap 3: Maak een evenement voor de knop

Deze voorbeeldtoepassing drukt de tekst voor een gebeurtenis op de knop af. U moet dus een evenement voor de knop maken. Bel hiervoor setOnAction () op de knop en definieer een anonieme klasse Event Handler als parameter voor de methode.Definieer binnen deze anonieme klasse een methode handle (). Bekijk de code voor de handle () methode.

btn.setText ('Say' Welcome to Edureka! '') btn.setOnAction (new EventHandler () {@Override public void handle (ActionEvent event) {System.out.println ('Welcome to Edureka!')}

Stap 4: Maak een lay-out en voeg de knop eraan toe

JavaFX biedt meestal een aantal lay-outs. Implementeer een van hen om de widgets correct te visualiseren. U moet andere knooppunten zoals knoppen, teksten, enz. Aan deze lay-out toevoegen.

hoe java swing te gebruiken
StackPane root = nieuwe StackPane () root.getChildren (). Add (btn)

Stap5: Creëer de scène

De scène bevindt zich op een hoger niveau in de hiërarchie van de JavaFx-applicatiestructuur. U moet dus uw lay-out aan de scène toevoegen. U kunt het instantiërend maken javafx.scene.Scene class en geef het layout-object door aan de scene class constructor.

Scene scene = nieuwe scene (root, 300, 250)

Stap5: Bereid het podium voor

Het podium is de hoofdcontainer en het toegangspunt van de applicatie. Gebruik methoden die worden aangeboden door javafx.stage.Stage class om enkele attributen voor het podium in te stellen.Gebruik de methode show () om het podium weer te geven. Hier is de code daarvoor.

primaryStage.setTitle ('Hallo wereld!') primaryStage.setScene (scène) primaryStage.show ()

Stap6: Creëer de belangrijkste methode

Maak in de laatste stap een hoofdmethode waarin u de toepassing start, d.w.z. de methode launch () aanroepen en de opdrachtregelargumenten (args) eraan doorgeven.

public static void main (String [] args) {launch (args)}

Stap7: Start de applicatie om de uitvoer te zien.

Om het interessanter te maken, kunt u de gebruikersinterface van de JavaFX-applicatie wijzigen door er een aangepast ontwerp op toe te passen, zoals HTML en CSS.

Hiermee zijn we bij het einde hiervanJavaFX-zelfstudie. We hebben de interne structuur van de JavaFX-applicatie doorgenomen en de belangrijkste mogelijkheden van de architectuur, levenscyclus en componenten geleerd. We hebben ook gekeken hoe je een eenvoudige GUI-applicatie kunt maken.

Zorg ervoor dat je zoveel mogelijk oefent en terugkeert naar je ervaring.

Bekijk de door Edureka, een vertrouwd online leerbedrijf met een netwerk van meer dan 250.000 tevreden leerlingen verspreid over de hele wereld. We zijn hier om je te helpen bij elke stap op je reis, om naast deze Java-interviewvragen ook een curriculum te bedenken dat is ontworpen voor studenten en professionals die een Java-ontwikkelaar willen worden.

Heeft u een vraag voor ons? Vermeld het alstublieft in het commentaargedeelte van deze JavaFX-zelfstudie en we nemen zo snel mogelijk contact met u op.