Erinevus lehekülje "ITI0011:JavaFX" redaktsioonide vahel
(→Lingid) |
(→Lingid) |
||
(ei näidata sama kasutaja 2 vahepealset redaktsiooni) | |||
2. rida: | 2. rida: | ||
== Lingid == | == Lingid == | ||
− | + | JavaFX kasutamine IntelliJ's: https://www.jetbrains.com/help/idea/2016.1/preparing-for-javafx-application-development.html | |
Scene Builderi allalaadimine lehelt: http://gluonhq.com/products/downloads/ | Scene Builderi allalaadimine lehelt: http://gluonhq.com/products/downloads/ | ||
8. rida: | 8. rida: | ||
Vaikimisi installeeritakse Windowsis sellisesse kausta: C:\Users\[kasutaja]\AppData\Local\SceneBuilder\SceneBuilder.exe | Vaikimisi installeeritakse Windowsis sellisesse kausta: C:\Users\[kasutaja]\AppData\Local\SceneBuilder\SceneBuilder.exe | ||
− | Väga hea tutorial: http://code.makery.ch/java/javafx-8-tutorial-intro/ | + | Väga hea tutorial: http://code.makery.ch/java/javafx-8-tutorial-intro/ '''NB!''' tutoriali läbitegemiseks on kindlasti vaja Java versioon 8u40 (või uuem). |
Oracle'i enda tutorial JavaFX kohta: http://docs.oracle.com/javase/8/javase-clienttechnologies.htm | Oracle'i enda tutorial JavaFX kohta: http://docs.oracle.com/javase/8/javase-clienttechnologies.htm | ||
+ | |||
+ | Eclipse'is arendamiseks on mõistlik laadida alla e(fx)clipse plugin: http://www.eclipse.org/efxclipse/index.html | ||
+ | |||
+ | == IntelliJ ja JavaFX == | ||
+ | |||
+ | Lugemismaterjal: https://www.jetbrains.com/help/idea/2016.1/preparing-for-javafx-application-development.html | ||
+ | |||
+ | Uuema IntelliJ-ga peaks JavaFX plugin kaasa tulema. Kui loote uue projekti: File -> New -> Project, peaks vasakul valikus olema Java FX. | ||
+ | |||
+ | Sellise projekti puhul luuakse järgnev projektistruktuur: | ||
+ | |||
+ | <pre> | ||
+ | src/ | ||
+ | sample/ <- package | ||
+ | Controller.java <- controller, juhtimine | ||
+ | Main.java <- programm pannakse siit käima | ||
+ | sample.fxml <- view, visuaalne osa programmist | ||
+ | </pre> | ||
+ | |||
+ | == E(fx)clipse'is uusima Java seadistamine == | ||
+ | |||
+ | Kui teil eelnevalt on olnud vanem versioon Javast, siis peale uue (v 8u40) installeerimist see automaatselt Eclipse'is ei jõustu. Mõistlik oleks see terve Eclipse'i peale vaikimisi versiooniks muuta. Selleks mine: Window -> Preferences -> Java -> Installed JREs. Seal on arvatavasti teie eelnev versioon Javast (näiteks 8u31 või 8u25). Add.. -> StandardVM. JRE home -> sinna läheb java juurkaust (mille sees on bin ja lib kaustad), näiteks <code>C:\Program Files\Java\jre1.8.0_40</code>. Määrake mingi nimi (vaikimisi võtab kausta nime). Finish. Nüüd peaks JRE-de nimekirjas olema teie lisatud 8u40. Pange 8u40 ette linnuke - edaspidi on see vaikimisi JRE uute projektide puhul. | ||
+ | |||
+ | Olemasoleva projekti puhul peate JRE käsitsi ära muutma: project (kas ülevalt menüüst või exploreris parem klikk projekti nime peal) -> Properties -> Java Build Path -> Libraries. Sealt lisada Add Library... -> JRE System Library -> sealt peaks Workspace default (8u40) valima. | ||
== JavaFX kasutamine Java versioon 1.7-ga == | == JavaFX kasutamine Java versioon 1.7-ga == |
Viimane redaktsioon: 24. märts 2016, kell 09:28
Lingid
JavaFX kasutamine IntelliJ's: https://www.jetbrains.com/help/idea/2016.1/preparing-for-javafx-application-development.html
Scene Builderi allalaadimine lehelt: http://gluonhq.com/products/downloads/
Vaikimisi installeeritakse Windowsis sellisesse kausta: C:\Users\[kasutaja]\AppData\Local\SceneBuilder\SceneBuilder.exe
Väga hea tutorial: http://code.makery.ch/java/javafx-8-tutorial-intro/ NB! tutoriali läbitegemiseks on kindlasti vaja Java versioon 8u40 (või uuem).
Oracle'i enda tutorial JavaFX kohta: http://docs.oracle.com/javase/8/javase-clienttechnologies.htm
Eclipse'is arendamiseks on mõistlik laadida alla e(fx)clipse plugin: http://www.eclipse.org/efxclipse/index.html
IntelliJ ja JavaFX
Lugemismaterjal: https://www.jetbrains.com/help/idea/2016.1/preparing-for-javafx-application-development.html
Uuema IntelliJ-ga peaks JavaFX plugin kaasa tulema. Kui loote uue projekti: File -> New -> Project, peaks vasakul valikus olema Java FX.
Sellise projekti puhul luuakse järgnev projektistruktuur:
src/ sample/ <- package Controller.java <- controller, juhtimine Main.java <- programm pannakse siit käima sample.fxml <- view, visuaalne osa programmist
E(fx)clipse'is uusima Java seadistamine
Kui teil eelnevalt on olnud vanem versioon Javast, siis peale uue (v 8u40) installeerimist see automaatselt Eclipse'is ei jõustu. Mõistlik oleks see terve Eclipse'i peale vaikimisi versiooniks muuta. Selleks mine: Window -> Preferences -> Java -> Installed JREs. Seal on arvatavasti teie eelnev versioon Javast (näiteks 8u31 või 8u25). Add.. -> StandardVM. JRE home -> sinna läheb java juurkaust (mille sees on bin ja lib kaustad), näiteks C:\Program Files\Java\jre1.8.0_40
. Määrake mingi nimi (vaikimisi võtab kausta nime). Finish. Nüüd peaks JRE-de nimekirjas olema teie lisatud 8u40. Pange 8u40 ette linnuke - edaspidi on see vaikimisi JRE uute projektide puhul.
Olemasoleva projekti puhul peate JRE käsitsi ära muutma: project (kas ülevalt menüüst või exploreris parem klikk projekti nime peal) -> Properties -> Java Build Path -> Libraries. Sealt lisada Add Library... -> JRE System Library -> sealt peaks Workspace default (8u40) valima.
JavaFX kasutamine Java versioon 1.7-ga
Kui vähegi võimalik, on soovitatav kasutada Java versiooni 8 (täpsemalt isegi 8.40). Kui mingil põhjusel pole see võimalik, siis see info töötas eelmisel aastal (pole läbi testitud). Infoks, et HW4 nõuab Java versioon 8-t.
TTÜ arvutiklassides on arvutitesse installeeritud Java versioon 1.7. Sellega vaikimisi JavaFX-i kaasas ei ole. Et kasutada JavaFX-i, tuleb teha järgmised sammud:
- kui projekt on loodud, siis projekti peal parem klikk - properties
- Java Build Path (seadete aknas vasakul valik)
- Libraries (tab)
- Add External JARs.. (nupp)
- otsite üles jfxrt.jar faili, mis tõenäoliselt asub java jrt (runtime) kataloogis, lib kausta all. Arvutiklassis näiteks: C:\Program Files\Java\jre7\lib\jfxrt.jar
Nüüd peaks JavaFX rakendus Java versiooniga 1.7 töötama.
Hello World
Lihtne "hello world" näide JavaFX-iga (saate testida, kas JavaFX sai seadistatud korrektselt). Testimiseks tehke uus Java projekt ja src kausta alla klass nimega HelloWorld ning kopeerige järgnev kood sellesse faili:
<source lang="java"> 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 HelloWorld extends Application {
public static void main(String[] args) { launch(args); } @Override public void start(Stage primaryStage) { primaryStage.setTitle("Hello World!"); Button btn = new Button(); btn.setText("Say 'Hello World'"); btn.setOnAction(new EventHandler<ActionEvent>() { @Override public void handle(ActionEvent event) { System.out.println("Hello World!"); } }); StackPane root = new StackPane(); root.getChildren().add(btn); primaryStage.setScene(new Scene(root, 300, 250)); primaryStage.show(); }
} </source>
Probleemid
Sellise seadistusega võib teil tekkida "Access restriction" probleem. Erinevatel inimestel on erinev lahendus töötanud. Vaadake näiteks neid lahendusi: