2016-04-17 7 views
0

Ich benutze JavaFX in Eclipse von JDK 1.8.0_72. Ich möchte ein Bild im Hintergrund eines Bildlauffensters anzeigen. Ich verwende den folgenden Code, dies zu tun:Gray Scroll Pane Hintergrundbild in JavaFX

ScrollPane s2 = new ScrollPane(); 
s2.setContent(label); 
s2.setStyle("-fx-background-image: url('DungeonRoomImage.png');"); 

Diese ganz gut auf andere Objekte wie Labels funktioniert und GridPanes aber aus irgendeinem Grund nicht auf Scroll-Scheiben, wo es einen grauen Block in der Mitte Vertuschung Anzeige der Bild. Wenn Sie genau zwischen der Grenze und der grauen Mitte schauen, können Sie das Bild sehen, das heraus späht.

https://gyazo.com/597ce351f158c1d66c33fe301bd75feb

Das gleiche Problem tritt auf, wenn die Hintergrundfarbe eines Bildlauffensters zu ändern, aber unter Verwendung von

-fx-background: 

statt gelöst:

-fx-background-color: 

Ich habe versucht mit setBackground, das aber das gleiche Ergebnis liefert

s2.setBackground(new Background(new BackgroundImage(new Image("DungeonRoomImage.png"), null, null, null, null))); 

Kann jemand vorschlagen, den grauen Hintergrund loszuwerden oder einen Weg zu finden, um das Problem zu umgehen? Hier ist, wie das Hintergrundbild

https://gyazo.com/f84873278507700aea17452321b80b20

Antwort

1

das Hintergrundbild auf dem Münsterbildlauffenster des Ansichtsfenster aussehen sollte. Verwenden einer externen CSS-Datei:

.scroll-pane .viewport { 
    -fx-background-image: url('DungeonRoomImage.png'); 
} 
+0

Gibt es eine Möglichkeit, dies mit setStyle zu tun? –

+0

Nicht leicht. Es empfiehlt sich trotzdem, externe Stylesheets zu verwenden. –