Comment définir une image sur un arrière-plan de scène dans JavaFX?
Le titre dit tout, je suppose.
Comment définir une image .jpg
(ou tout autre format d'image pris en charge) sur un arrière-plan de scène?
, je un peu parvenir, à l'aide d'un HBox
, un Image
et ImageView
, comme ceci:
String url = ...
HBox box= new HBox();
Image x = new Image(url);
ImageView iv = new ImageView(x);
box.getChildren().add(iv);
box.setVisible(true);
Ensuite, j'ajoute cette boîte à la scène d'abord, et tout le reste après.
Je ne me plains pas de ce morceau de code - cela fonctionne à mes fins - mais existe-t-il un bon moyen de définir un arrière-plan?
0
2 answers
Un ImagePattern
peut être utilisé comme fill
de la Scene
:
ImagePattern pattern = new ImagePattern(myImage);
scene.setFill(pattern);
5
Author: fabian, 2016-06-03 17:05:40
Appelez Simplement setBackground
sur le nœud racine de la scène. Par exemple:
Pane root = ... ; // probably some pane subclass...
String url = ... ;
Image img = new Image(url);
BackgroundImage bgImg = new BackgroundImage(img,
BackgroundRepeat.NO_REPEAT, BackgroundRepeat.NO_REPEAT,
BackgroundPosition.DEFAULT,
new BackgroundSize(BackgroundSize.AUTO, BackgroundSize.AUTO, false, false, true, false));
// put stuff in root as normal....
Scene scene = new Scene(root);
Voir le Javadocs pour les paramètres du constructeur BackgroundImage
, etc.
4
Author: James_D, 2016-06-03 16:42:59