C01-Bases JavaFX

publicité
SLAM2
Présentation JavaFX
Concepts de bases pour la création d’une application JavaFX avec NetBeans.
Fin de swing!
Introduction
 JavaFX = Framework Oracle Java
 Construction de
 RIA (Rich Internet Application)
 Interface graphique
 Remplace Swing
 Intégré au JDK et au JRE depuis Java 7 u6
 Disponible pour Mac OS X, Windows et Linux
 Repose sur l’API JAVA SE
Historique de versions
Les bases d’une application JavaFX
 La classe principale doit hériter de javafx.application.Application
 Lancement de l’application par le main de cette classe
 Le main appelle la méthode launch qui appelle la méthode start
 Eléments graphiques:
 Stage correspond à une JFrame Swing
 Scene correspond à un JPanel Swing
 Et chaque élément graphique interne est un Node
Stage/Scene/Node
Les interfaces graphiques : Bonnes
pratiques
 Au format fxml:
 Xml avec des attributs fx (Affectation d’un contrôleur à une vue)
 Chaque noeuds contient des noeuds
 Générée depuis Scene Builder ou à la main
 Fxml chargé dynamiquement grâce à FXMLLoader
 Nœuds utiles du xml spécifier par un fx:id (identifiant fx)
 Nœuds récupérés depuis le java avec annotation @FXML
Démonstration 1 – Accordion de webview
Démonstration 1 - fxml
 Fenêtre identification avec login Admin et mot de passe 12345
 Si pas ok : message d’avertissement (Alert)
 Sinon message de confirmation puis chargement de la nouvelle scène
 Vbox pour l’authentification
 TextField pour le login
 PasswordField pour le mot de passe
 Button pour lancer le test de connexion
 Accordion pour les WebView
 TitledPane
 WebView pour sio.jbdelasalle.com
 TitledPane
 WebView pour anthony.medassi.free.fr
Démonstration 2 – ListView d’objets
 Les ListView contenant des objets (Ajout/Suppression)
Démonstration 2 – fxml
Démonstration 3 – ListView personnalisés
 Vue fxml pour chaque item de la liste
 Données stockées dans un Modèle (Singleton)
 Utilisation d’un ListCell et affectation à la listView avec setCellFactory
Démonstration 3 – fxml
Téléchargement