JavaFX apmācība: kā izveidot lietojumprogrammu?



Šī JavaFX apmācība sniedz īsu ievadu JavaFX platformai, tās funkcijām, arhitektūrai un palīdzēs jums izveidot pirmo JavaFX lietojumprogrammu

JavaFX ir Java platforma bagātīgu interneta lietojumprogrammu (RIA) izveidei, kuras var darbināt ļoti dažādās ierīcēs. To paredzēts aizstāt Šūpoles Java valodā lietojumprogrammas kā GUI ietvaru. Turklāt tas piedāvā vairāk funkciju nekā Swing. JavaFX ir nākamās paaudzes GUI rīku komplekts . Izklausās interesanti? Šajā JavaFX apmācībā sīki izpētīsim koncepciju.

Kas ir JavaFX?

JavaFX ir Java bibliotēka, ko izmanto dažādu platformu GUI lietojumprogrammu un bagātīgu interneta lietojumprogrammu (RIA) projektēšanai, izveidošanai, testēšanai un izvietošanai, kuras var darbināt visdažādākajās ierīcēs.





  • Viens stimuls JavaFX izveidei bija Swing nomaiņa. Turklāt JavaFX dizains ir konsekventāks nekā Swing.
  • Tam ir vairāk funkciju, un tas ir arī mūsdienīgāks, ļaujot noformēt GUI, izmantojot izkārtojuma failus (XML), un tos stilizēt .
  • JavaFX arī apvieno 2D + 3D grafiku, diagrammas, audio, video un iegultās tīmekļa lietojumprogrammas vienā saskaņotā GUI rīkkopā.

Piezīme: Bagātinātas interneta lietojumprogrammas ir tās tīmekļa lietojumprogrammas, kas piedāvā līdzīgas funkcijas un pieredzi kā darbvirsmas lietojumprogrammas. Tie lietotājiem piedāvā labāku vizuālo pieredzi, salīdzinot ar parastajām tīmekļa lietojumprogrammām.

Tagad, kad esat informēts par to, kas tieši ir JavaFX, pārbaudiet tā arhitektūras daļu šīs JavaFX apmācības nākamajā daļā.



JavaFX arhitektūra

JavaFX ir dažādi iebūvēti komponenti, kas ir savstarpēji saistīti. Tas satur bagātīgu API kopu, kas ir vairāk nekā pietiekami, lai izstrādātu bagātīgas interneta lietojumprogrammas, kas konsekventi darbojas daudzās platformās. Šajā attēlā parādīta JavaFX API arhitektūra.

Arhitektūra - JavaFX apmācība - Edureka

Detalizēti izpētīsim katru no šiem komponentiem.



kārtot c ++

Sižeta grafiks

Ainas grafiks ir JavaFX lietojumprogrammas izveides sākumpunkts. Tā ir hierarhiska mezglu, kas attēlo visus lietojumprogrammas lietotāja saskarnes vizuālos elementus. Atsevišķu ainu diagrammas elementu sauc par mezglu. Katrs mezgls ir vai nu filiāles, vai lapu mezgls. Nozaru mezglos var būt citi mezgli, piemēram, viņu bērni, bet lapu mezglos nav citu mezglu. Pirmo koku mezglu sauc par saknes mezgls. Saknes mezglā nav vecāku.

Šeit ir dažādas klases javafx.scene pakotne, kas tiek izmantota, lai izveidotu, modificētu un pielietotu dažas transformācijas mezglā.

Grafikas dzinējs

JavaFX grafikas dzinējs nodrošina grafikas atbalstu sižeta diagrammas komponentam. Tas parasti atbalsta gan 2D, gan 3D grafiku. Nodrošina arī programmatūras renderēšanu, ja sistēmā esošā grafiskā aparatūra nespēj atbalstīt aparatūras paātrinātu renderēšanu.

Divi JavaFX grafikas paātrinātie cauruļvadi ir:

  • Prizma - tāir augstas veiktspējas grafikas aparatūras paātrinājums, kas var atveidot gan 2D, gan 3D grafiku.
  • Quantum Toolkit -To izmanto, lai sasaistītu prizmu un stikla instrumentu komplektu un padarītu tos pieejamus iepriekšminētajiem kaudzes slāņiem.

Stikla tīrīšanas rīku komplekts

Tas ir no platformas atkarīgs slānis, kas savieno JavaFX platformu ar vietējo operētājsistēmu. Tas nodrošina vietējās operētājsistēmas pakalpojumus, piemēram, logu, notikumu, taimeru un virsmu pārvaldību.

Multivide un tīmekļa programma

  • Tīmekļa programma - tāir tīmekļa pārlūka dzinējs, ko izmanto, lai iegultu saturu JavaFX skatuves grafikā.Tas atbalsta HTML5, CSS, , DOM un SVG.
  • Multivides programma - tānodrošina rīkus, lai izveidotu multivides lietojumprogrammas, kas nodrošina multivides atskaņošanu darbvirsmas logā vai tīmekļa lapā atbalstītajās platformās. JavaFX mediju dzinējs ir balstīts uz atvērtā koda motoru, kas pazīstams kā a Straumētājs . Tas atbalsta video un audio satura atskaņošanu.

Tie irkomponenti, kas atbalsta JavaFX API. Nākamā šīs JavaFX apmācības daļa ir par JavaFX lietojumprogrammu struktūru.

JavaFX lietojumprogrammas anatomija

JavaFX lietojumprogrammair sadalīts hierarhiski trīs galvenajās sastāvdaļās: Skatuve, Aina un Mezgli.

Skatuve

Tas ir galvenais konteiners un pieteikuma ieejas punkts. Tas attēlo galveno logu, un izveidotais skatuves objekts tiek nodots kā sākt() metode Pieteikums klasē.Posmam ir divi parametri, Platums, un Augstums, kas nosaka pozīciju proti.

Ir pieejami pieci posmu veidi un mīnus

  • Dekorēts
  • Dekorēts
  • Caurspīdīgs
  • Vienoti
  • Lietderība

Jums jāzvana rādīt () metode skatuves satura parādīšanai.

Aina

The aina ir skatuves vizuālā satura konteiners. Tajā atrodas lietotāja interfeisa elementi, piemēram, attēlu skati, pogas, režģi, teksta kastes. Javafx.scene.cene klasēno iepakojuma javafx.scene nodrošina visas metodes, kā rīkoties ar ainas objektu.Jūs varat izveidot ainu, izveidojot Aina klases objekts un izkārtojuma objekta nodošana Scene klases konstruktorā.

Sižeta grafiks un mezgli

Tas pastāv piehierarhijas zemākais līmenis. A ainas grafiks ir kokam līdzīga datu struktūra (hierarhiska), kas attēlo ainas saturu. Jūs varat domāt par to kā dažādu mezglu kolekciju. Būtībā. a mezgls ir ainas diagrammas vizuāls / grafisks objekts.The Mezgls Iepakojuma klase javafx.scene apzīmē vienu mezglu JavaFX, un šī klase ir visu mezglu virsklase.

Tagad, kad jūs zinātJavaFX lietojumprogrammas struktūru, uzzināsim, kā izveidot JavaFX lietojumprogrammu ar piemēru šajā JavaFX apmācībā.

JavaFX lietojumprogrammas izveide

Pārbaudīsim, kā izpildīt Dž avaFX programmēšana IDE Eclipse. Pirmā lieta, kas jums jādara, ir instalēt e (fx) klips spraudnis Eclipse IDE. e (fx) klips ir rīku un nepieciešamo bibliotēku kopums, kas palīdz jums veikt JavaFX programmēšanu.

Šeit mēs izveidojam vienkāršu JavaFX lietojumprogrammu, kas drukā Laipni lūdzam Edurekā! konsolē, noklikšķinot uz pogas, kas parādīta uz skatuves.

pakotnes lietojumprogrammas importēšana javafx.application.Application importēšana javafx.event.ActionEvent import javafx.event.EventHandler importēt javafx.scene.Scene importēt javafx.scene.control.Button importēt javafx.scene.layout.StackPane importēt javafx.stage.Stage public class Main paplašina lietojumprogrammu {@Override public void start (Stage primaryStage) {Button btn = new Button () btn.setText ('Say' Welcome to Edureka! '') Btn.setOnAction (new EventHandler () {@Override public void hand ( ActionEvent notikums) {System.out.println ('Laipni lūdzam Edureka!')}}}) StackPane sakne = new StackPane () root.getChildren (). Add (btn) Scene scene = new Scene (root, 300, 250) primaryStage .setTitle ('Sveika pasaule!') primaryStage.setScene (scene) primaryStage.show ()} public static void main (String [] args) {launch (args)}}

Izeja:

Laipni lūdzam Edurekā!

JavaFX lietojumprogrammas piemēru skaidrojums

Mēģināsim saprast, kā šī piemērs darbojas, veicot vienkāršas darbības.

1. solis: Paplašiniet javafx.application.Application un ignorējiet start () metodi

Kā mēs iepriekš apspriedām, sākt() metode ir JavaFX lietojumprogrammas sākumpunkts. Importēt JavaFX.application.Application lai ignorētu sākuma () metodi. Ignorēt sākuma () metodi un nodot tai oklases objekts javafx.stage.Stage.

@Orride public void start (Stage primaryStage)

2. solis: Izveidojiet pogu

Jūs varat izveidot pogu, veicot javafx.scene.control.Button klasē. Tāpēc importējiet attiecīgo klasi kodā. Pogas klases konstruktorā nododiet pogas etiķetes tekstu.

Poga btn = jauna poga ()

3. solis: Izveidojiet pogai notikumu

metodes pārslodzes priekšrocības java

Šis lietojumprogrammas piemērs izdrukā notikuma tekstu uz pogas. Tātad, pogai ir jāizveido notikums. Šim nolūkam zvaniet setOnAction () uz pogas un kā metodes parametru definējiet anonīmu klases notikumu apstrādātāju.Šīs anonīmās klases iekšpusē definējiet metodi ((). Pārbaudiet koda metodi ().

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

4. solis: Izveidojiet izkārtojumu un pievienojiet tam pogu

JavaFX parasti nodrošina vairākus izkārtojumus. Ieviesiet vienu no tiem, lai pareizi vizualizētu logrīkus. Šim izkārtojumam jāpievieno citi mezgli, piemēram, pogas, teksti utt.

StackPane sakne = new StackPane () root.getChildren (). Add (btn)

5. solis: Izveidojiet ainu

Aina ir augstākā līmenī JavaFx lietojumprogrammu struktūras hierarhijā. Tātad, ainai jāpievieno izkārtojums. Jūs varat to izveidot tūlītēju javafx.scene.cene klasi un nodot izkārtojuma objektu ainas klases konstruktoram.

Sižeta aina = jauna aina (sakne, 300, 250)

5. solis: Sagatavojiet skatuvi

Posms ir galvenais konteiners un pieteikuma ieejas punkts. Izmantojiet metodes, kuras piedāvā javafx.stage.Stage klasei, lai iestatītu dažus skatuves atribūtus.Izmantojiet show () metodi, lai parādītu skatuvi. Lūk, šim kodam.

primaryStage.setTitle ('Sveika pasaule!') primaryStage.setScene (aina) primaryStage.show ()

6. solis: Izveidojiet galveno metodi

Pēdējā solī izveidojiet galveno metodi, kurā palaidīsit lietojumprogrammu, t.i., zvana palaišanas () metodi un pārsūtīsit komandrindas argumentus (argumentus).

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

7. solis: Palaidiet lietojumprogrammu, lai redzētu izvadi.

Lai padarītu to interesantāku, varat mainīt JavaFX lietojumprogrammas lietotāja interfeisu, piemērojot tam pielāgotu dizainu, piemēram, HTML un CSS.

Tas mūs noved pie tā beigāmJavaFX apmācība. Mēs izgājām cauri JavaFX lietojumprogrammas iekšējai struktūrai un uzzinājām tās arhitektūras, dzīves cikla un komponentu galvenās iespējas. Mēs arī pārbaudījām, kā izveidot vienkāršu GUI lietojumprogrammu.

Pārliecinieties, ka pēc iespējas vairāk praktizējat, un atgriezieties savā pieredzē.

Pārbaudiet Autors: Edureka, uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē. Mēs esam šeit, lai palīdzētu jums katrā solī jūsu ceļojumā, lai kļūtu par papildus šiem Java intervijas jautājumiem, mēs piedāvājam mācību programmu, kas paredzēta studentiem un profesionāļiem, kuri vēlas būt Java izstrādātāji.

Vai mums ir jautājums? Lūdzu, pieminējiet to šīs JavaFX apmācības komentāru sadaļā un mēs pēc iespējas ātrāk sazināsimies ar jums.