Graphismes avec Java FX

Affichage d'une image dans l'ImageView

On va écrire du code permettant d'afficher une des images dans l'ImageViewer vueImage.

On va d'abord créer une variable de type String dans le fichier contrôleur pour contenir le nom de l'image à afficher.
Dans EchantillonController, on ajoute donc dans la liste des déclarations de variables :

String nomImage="images/Penguins.jpg";
(il faut évidemment indiquer le nom d'une des images importées dans le package images). Le code qui va permettre de charger l'image est :
Image uneImage=new Image(nomImage);//crée un objet de type Image pour contenir l'image désignée par la chaîne de caractères (String) "nomImage" 
vueImage.setImage(uneImage);//affiche cette image dans l'ImageViewer vueImage 
Il reste à trouver un endroit où placer ce code, pour qu'il puisse être exécuté par le programme.

Pour que l'image apparaisse dès le lancement du programme, on peut placer ce code dans une méthode spéciale @FXML private void initialize() qui a l'intérêt d'être exécutée automatiquement juste après la mise en place de l'interface.

Le code complet du contrôleur devient alors

package application;

import javafx.fxml.FXML;
import javafx.scene.control.Button;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;

public class EchantillonController {
	@FXML ImageView vueImage;
	@FXML Button boutonSuivante;
	String nomImage="images/Penguins.jpg";
	
	@FXML void initialize(){
		Image uneImage=new Image(nomImage);
		vueImage.setImage(uneImage); 
	}
}

L'image choisie apparaît au-dessus du bouton dès le lancement du programme.

On aurait pu faire aussi :

package application;

import javafx.fxml.FXML;
import javafx.scene.control.Button;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;

public class EchantillonController {
	@FXML ImageView vueImage;
	@FXML Button boutonSuivante;
	String nomImage="Penguins.jpg";
	
	@FXML void initialize(){
		Image uneImage=new Image("images/"+nomImage);
		vueImage.setImage(uneImage); 
	}
}

 
Licence Creative Commons
licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 non transposé
Auteur : Nathalie Bonnin
Professeur de Physique, Chimie, Informatique au lycée La Martinière Monplaisir (Lyon 8ème)
Contact :
nathalie.bonnin (chez) scientillula.net
Licence Creative Commons
La totalité du contenu du site Scientillula.net appartient à Nathalie Bonnin et est mise à disposition selon les termes de la licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 non transposé