JavaFX Tutorial: Hvordan lager du et program?



Denne JavaFX-opplæringen gir en kort introduksjon til JavaFX-plattformen, dens funksjoner, dens arkitektur og vil hjelpe deg med å lage din første JavaFX-applikasjon

JavaFX er en Java-plattform for å lage rike internettapplikasjoner (RIA) som kan kjøres på et stort utvalg av enheter. Den er ment å erstatte Sving i Java applikasjoner som et GUI-rammeverk. Det tilbyr også flere funksjoner enn Swing. JavaFX er neste generasjons GUI-verktøysett for . Høres interessant ut? La oss utforske konseptet i detalj i denne JavaFX-opplæringen.

Hva er JavaFX? S

JavaFX er et Java-bibliotek som brukes til å designe, opprette, teste og distribuere GUI-applikasjoner på tvers av plattformer og rike internettapplikasjoner (RIA) som kan kjøre på tvers av en rekke enheter.





  • Et insentiv til å lage JavaFX var å erstatte Swing. Videre er JavaFX mer konsistent i utformingen enn Swing.
  • Den har flere funksjoner og er også mer moderne, slik at du kan designe GUI ved hjelp av layoutfiler (XML) og style dem med .
  • JavaFX integrerer også 2D + 3D-grafikk, diagrammer, lyd, video og innebygde webapplikasjoner i ett sammenhengende GUI-verktøy.

Merk: Rike Internett-applikasjoner er de webapplikasjonene som tilbyr lignende funksjoner og erfaring som stasjonære applikasjoner. De gir bedre visuell opplevelse sammenlignet med de vanlige webapplikasjonene til brukerne.

hvordan du bruker sveve i css

Nå som du er klar over hva JavaFX er, sjekk ut arkitekturdelen av den i neste del av denne JavaFX-opplæringen.



JavaFX-arkitektur

JavaFX har forskjellige innebygde komponenter som er sammenkoblet med hverandre. Den inneholder et rikt sett med APIer som er mer enn nok til å utvikle rike internettapplikasjoner som kjører konsekvent på tvers av mange plattformer. Illustrasjonen nedenfor viser arkitekturen til JavaFX API.

Arkitektur - JavaFX Tutorial - Edureka

La oss utforske hver av disse komponentene i detalj.



Scenegraf

Scenegraf er utgangspunktet for å konstruere et JavaFX-program. Det er en hierarkisk av noder som representerer alle de visuelle elementene i applikasjonens brukergrensesnitt. Et enkelt element i en scenegraf kalles en node. Hver node er enten en grenknute eller en bladnode. Grennoder kan inneholde andre noder, som deres barn, men bladnoder inneholder ikke andre noder. Den første noden i treet kalles rotnode. En rotnode har ingen foreldre.

Det er forskjellige klasser til stede i javafx.scene pakke som brukes til å lage, endre og bruke noen transformasjoner på noden.

Grafikkmotor

JavaFX-grafikkmotoren gir grafikkstøtte til scenegrafkomponenten. Den støtter generelt både 2D og 3D-grafikk. Gir også gjengivelse av programvare når grafikkmaskinvaren på systemet ikke er i stand til å støtte maskinvareakselerert gjengivelse.

De to grafikkakselererte rørledningene i JavaFX er:

  • Prisme - Deter en høyytelses grafikk-maskinvareakselerert som kan gjengi både 2D- og 3D-grafikk.
  • Quantum Toolkit -Den brukes til å binde prisme og glassvinduverktøyssett sammen og gjør dem tilgjengelige for de ovennevnte lagene i bunken.

Glass Windowing Toolkit

Det er et plattformavhengig lag som kobler JavaFX-plattformen til det opprinnelige operativsystemet. Den tilbyr innebygde operativsystemtjenester som administrering av vinduer, hendelser, tidtakere og overflater.

Media og nettmotor

  • Web Engine - Deter en nettlesermotor som brukes til å bygge inn innhold til et JavaFX-scenediagram.Den støtter HTML5, CSS, , DOM og SVG.
  • Media Engine - Detgir verktøy for å lage medieapplikasjoner som muliggjør medieavspilling i skrivebordsvinduet eller på en webside på støttede plattformer. JavaFX mediemotor er basert på en åpen kildekodemotor kjent som en Streamer . Den støtter avspilling av video- og lydinnhold.

Dette erkomponenter som støtter JavaFX API. Neste del av denne JavaFX-opplæringen handler om JavaFX-applikasjonsstrukturen.

Anatomi av et JavaFX-program

JavaFX-applikasjoner hierarkisk delt inn i tre hovedkomponenter: Stage, Scene og Nodes.

Scene

Det er hovedbeholderen og inngangspunktet for applikasjonen. Det representerer hovedvinduet og det opprettede sceneobjektet sendes som et argument for start() Metode av applikasjon klasse.Et trinn har to parametere, Bredde, og Høyde, som bestemmer posisjonen nemlig.

Det er fem typer etapper tilgjengelig og minus

  • Dekorert
  • Udekorert
  • Gjennomsiktig
  • Enhetlig
  • Nytte

Du må ringe vise fram() metode for å vise innholdet på en scene.

Scene

De scene er en container for det visuelle innholdet på scenen. Den inneholder UI-elementene, for eksempel Image Views, Buttons, Grids, TextBoxes. Javafx.scene.Scene klasseav pakken javafx.scene gir alle metodene for å håndtere et sceneobjekt.Du kan opprette en scene ved å lage Scene klasseobjekt og sende layoutobjektet til sceneklassekonstruktøren.

Scenegraf og noder

Det eksisterer vedlaveste nivået i hierarkiet. EN scenegraf er en trelignende datastruktur (hierarkisk) som representerer innholdet i en scene. Du kan tenke på det som samlingen av forskjellige noder. I utgangspunktet. en node er et visuelt / grafisk objekt av en scenegraf.De Node Klasse av pakken javafx.scene representerer en enkelt node i JavaFX, og denne klassen er superklassen til alle nodene.

Nå som du vetstrukturen til et JavaFX-program i detalj, la oss lære hvordan du oppretter et JavaFX-program med et eksempel i denne JavaFX-opplæringen.

Opprette et JavaFX-program

La oss sjekke hvordan vi skal utføre J avaFX programmering på IDE Eclipse. Det første du må gjøre er å installere e (fx) klipp plugin for Eclipse IDE. e (fx) klipp er et sett med verktøy og nødvendige biblioteker som hjelper deg med å utføre JavaFX-programmering.

Her lager vi et enkelt JavaFX-program som skrives ut Velkommen til Edureka! på konsollen ved å klikke på knappen som vises på scenen.

pakke applikasjon 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 offentlig klasse Main utvider applikasjonen {@Override public void start (Stage primaryStage) {Button btn = new Button () btn.setText ('Say' Welcome to Edureka! '') Btn.setOnAction (new EventHandler () {@ Override public ugyldig håndtak ( ActionEvent-hendelse) {System.out.println ('Velkommen til Edureka!')}}) StackPane root = ny StackPane () root.getChildren (). Legg til (btn) Scene scene = new Scene (root, 300, 250) primaryStage .setTitle ('Hello World!') primaryStage.setScene (scene) primaryStage.show ()} public static void main (String [] args) {launch (args)}}

Produksjon:

Velkommen til Edureka!

JavaFX applikasjonseksempel Programforklaring

La oss prøve å forstå hvordan dette eksempelprogrammet fungerer i enkle trinn.

Trinn 1: Utvid javafx.application.Application og overstyr start () -metoden

Som vi diskuterte tidligere, start() metoden er utgangspunktet for JavaFX Application. Import JavaFX.application.Application for å overstyre start () -metoden. Overstyr startmetoden () og gi den en object av klassen javafx.stage.Stage.

hva er et dynamisk utvalg
@Override offentlig ugyldig start (Stage primaryStage)

Steg 2: Lag en knapp

Du kan opprette en knapp ved å starte javafx.scene.control.Button klasse. Importer derfor den aktuelle klassen til kode. Send knappetikettteksten i Button class constructor.

Knapp btn = ny knapp ()

Steg 3: Lag en hendelse for knappen

Dette eksempelprogrammet skriver ut teksten for en hendelse på knappen. Så du må lage en hendelse for knappen. For dette formålet, ring setOnAction () på knappen og definer en anonym klasse Event Handler som parameter for metoden.I denne anonyme klassen definerer du et metodeshåndtak (). Sjekk koden for håndteringsmetoden ().

btn.setText ('Si' Velkommen til Edureka! '') btn.setOnAction (ny EventHandler () {@ Overstyr offentlig tomhåndtak (ActionEvent-hendelse) {System.out.println ('Velkommen til Edureka! ')}

Trinn 4: Lag et oppsett og legg til knappen i det

JavaFX gir vanligvis en rekke oppsett. Implementere en av dem for å visualisere widgetene riktig. Du må legge til andre noder som knapper, tekster, etc. til dette oppsettet.

pmi-acp verdt det
StackPane rot = ny StackPane () root.getChildren (). Legg til (btn)

Trinn 5: Lag scenen

Scenen er på et høyere nivå i hierarkiet til JavaFx applikasjonsstruktur. Så du må legge til layoutet ditt på scenen. Du kan lage den øyeblikkelig javafx.scene.Scene klasse og send layoutobjektet til sceneklassekonstruktøren.

Scenescene = ny scene (root, 300, 250)

Trinn 5: Forbered scenen

Scenen er hovedbeholderen og inngangspunktet for applikasjonen. Bruk metoder som tilbys av javafx.stage.Stage klasse for å sette noen attributter for scenen.Bruk show () metoden for å vise scenen. Her er koden til det.

primaryStage.setTitle ('Hello World!') primaryStage.setScene (scene) primaryStage.show ()

Trinn 6: Lag hovedmetoden

I det siste trinnet, opprett en hovedmetode der du vil starte applikasjonen, dvs. ring lanseringsmetoden () og gi kommandolinjeargumentene (args) til den.

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

Trinn 7: Kjør applikasjonen for å se utdataene.

For å gjøre det mer interessant, kan du endre brukergrensesnittet til JavaFX-applikasjonen ved å bruke et tilpasset design på det som HTML og CSS.

Dette fører oss til slutten av detteJavaFX Tutorial. Vi gikk gjennom den interne strukturen til JavaFX-applikasjonen og lærte nøkkelegenskapene til arkitekturen, livssyklusen og komponentene. Vi sjekket også ut hvordan du oppretter et enkelt GUI-program.

Forsikre deg om at du trener så mye som mulig og tilbakestiller opplevelsen.

Sjekk ut av Edureka, et pålitelig online læringsfirma med et nettverk av mer enn 250 000 fornøyde elever spredt over hele verden. Vi er her for å hjelpe deg med hvert trinn på reisen, for å bli en foruten dette java-intervjuspørsmålene, kommer vi med en læreplan som er designet for studenter og fagpersoner som ønsker å være Java-utvikler.

Har du et spørsmål til oss? Vennligst nevn det i kommentarfeltet i denne JavaFX-veiledningen og vi kommer tilbake til deg så snart som mulig.