
FAQ JavaFXConsultez toutes les FAQ
Nombre d'auteurs : 4, nombre de questions : 86, dernière mise à jour : 18 mai 2009
Sommaire→SceneGraph→Noeuds→Media
Vous devez utiliser la classe javafx.scene.image.ImageView dans
laquelle vous devez mettre un objet de type javafx.scene.image.Image.
ImageView est une classe qui hérite de Node et cet objet peut donc être
placé dans une scène et manipulé comme n'importe quel autre noeud.
Par exemple, dans le code suivant, le fichier image se trouve dans le même package que le script :
var monImage = Image {
url: "{__DIR__}image.png"
}
var maVue = ImageView {
image: monImage ;
}Étant donné que la classe Image fonctionne de manière asynchrone, le code s'exécutera jusqu'au bout même si l'image n'est pas trouvée. Mais rien ne sera affiché dans la vue, bien sûr.
Vous devez déclarer un objet de type javafx.scene.media.Media qui pointe vers votre fichier sonore et utiliser un javafx.scene.media.MediaPlayer pour le lire.
Par exemple, dans le code suivant le fichier sonore se trouve dans le même package que le script :
var media = Media{
source: "{__DIR__}son.wav"
}
var player = MediaPlayer{
media:media
}
player.play();Il est possible de mettre le champs autoPlay à true pour que le son soit joué automatiquement mais il semble alors que dans ce cas le lecteur lance une autre Thread ou une Timeline et que le script ne se termine pas.
Si le fichier sonore n'est pas trouvé, des exceptions seront levées sur la console mais, comme la classe Media fonctionne de manière asynchrone, le code s'exécutera jusqu'au bout (mais aucun son ne sera joué bien sûr).


















