JavaFX je jazyk určený na tvorbu appletov-aplikácií bežiacich na strane klienta. Svojou všestrannosťou pomáha vývojárom tvoriť bohaté klientské aplikácie.
Predchodca objektovo-orientovaného jazka JavaFX 2 bol jazyk JavaFX 1. Tento deklaratívny statický jazyk, nazývaný tiež JavaFX Script, bol zostavený na Java bytecode, teda využíval na svoj beh Java virtual machine. Platforma, na ktorej fungovali programy napísané v JavaFX1, bola Java ME. Pre zaujímavosť a porovnanie uvádzam príklad.
Oracle vyšiel java vývojárom v ústrety, keď v oktobri roku 2011 uvolnil verziu JavaFX2, v ktorom pôvodný skriptovací jazyk nahradil natívny kód písaný v jazyku Java. Knižnice JavaFX obsahujú nástroje pre tvorbu GUI aplikácií, prácu s médiami, 2D a 3D grafikou a.t.ď. Keďže sa jedná vlastne o jazyk Java, je možné využívať všetky knižnice, ktoré sú pre Javu dostupné. Nutnosťou na strane klienta je mať nainštalovaný Java Runtime Enviroment.
JavaFX v najnovšej verzii je obsiahnutá v poslednom vydaní Java SE.. Pre inštaláciu JavaFX SDK je potrebné preinštalovať Javu.
JavaFX je dostupná aj v samostatnom balíčku.
Programovať v JaveFX môžme v hociktorom prostredí pridaním knižnice jfxrt.jar, ktorý by mal byť umiestený v ..\Program Files\Oracle\JavaFX 2.1 Runtime\lib (alebo v priečinku Java v Program Files-podľa inštalácie).
Pre zjednodušenie a generovanie kódu odporúčam stiahnuť Netbeans s nástrojmi pre JavuFX.
Pohodlne programovať v JaveFX môžme aj v Eclipse s využitím pluginu e(fx)clipse.
Inštalácia pluginu:
Help->Install->New Software, kde to pložky add priložíme url "http://www.efxclipse.org/p2-repos/releases/latest/". Po inštalácii
vytvárame nový JavaFX projekt (File->New->Project->JavaFX Project). Vlastnosti projektu definujeme v subore *.fxbuild(umiestnenie,parametre JNLP súbor).
Možné problémy:
+JAVA_HOME = C:\Program Files\Java\jdk1.7.0_07 (W7: Pocitac/Vlastnosti/Rozsirene systemove nastavenia/Premenne prostredia)
+C:\Program Files\Java\jdk1.7.0_07\lib\ant-javafx.jar
skopirovat do C:\Program Files\Java\lib\ant-javafx.jar
Viac podrobností o tvorbe projektou pomocou pluginu e(fx)clipse tu.
Pre nasledujúce cvičenia si preinštalujte Javu a NetBeans.
Scéna vytvorená v JavaFX 2 je založená na grafovej pradigme, ktorá má štruktúru stromu, kde jednotlivé uzly sú grafické komponenty.
Stage - ekvivalent Window, JFrame, JDialog. Po pridaní všetkých uzlov volaný metodow show().
Group - zoznam komponentov podstromu, združuje vlastnosti
Scene - kontajner pre graficé komponenty
Viac o objektoch obsiahnutých v knižniciach JavaFX v dokumentácii.
JavaFX je schopná komunikácie s inými jazkmy - SVG, JavaScript, HTML5
Nabežnejším spôsobom, ako umiestniť applet v jazyku JavaFX na webovú stránku je za pomoci xml súboru JNPL, HTML stránky,
ktorá využíva JavaScript ako uvádzací prostriedok appletu a samotného JAR súboru.
Stránka s JavaScriptom
Odporúčaný spôsob, ako vložiť aplikáciu JavaFX do webovej stránky alebo spustiť vo vnútri prehliadača je pomocou knižnice Deployment Tollkit,
ktoré poskytuje JavaScript API. Okrem vloženia do obsahu webovej stránky, Deployment Tollkit sprostredkuváva aj nasledujúce funkcie:
-zisťuje, či je užívateľské prostredie podporované
-v prípade potreby spušťa inštaláciu Runtime JavaFX
-generuje chybové správy
Dôležité metódy Deployment Toolkit:
dtjava.embed(app, platform, callbacks) - vloží aplikácie do prehliadača
dtjava.launch(app, platform, callbacks) - spustenie aplikácie mimo prehliadača
dtjava.install(platform, callbacks) - inštalácia potrebných komponentov
dtjava.validate(platform) - overí,či užívateľské prostredie spĺňa požiadavky na spustenie appletu
Descriptor
Zodpovedný za spustenie aplikácie. Jeho konštruktor vyzerá nasledujúco.
1
Umiestnite Netbeansom vygenerovaný HelloWorld na webstránku so všetkými potrebnými súčasťami.
2.
Vytvorte applet, ktorý bude odoberať RSS zo stránky weather.yahoo.com,pričom obsah okna zobrazujúci informácie o počasí bude refreshovaný každých 60sekúnd. Url odberu RSS počasia pre Košice je http://weather.yahooapis.com/forecastrss?w=820323&u=c
Pri parsovaní dát využite knižnicu org.w3c.dom.
Projekt.