Zauważyłem, że po uruchomieniu aplikacji JavaFX na JVM 7 i JVM 8 otrzymuję różne domyślne skórki. Jak ustawić domyślną skórkę, aby była taka sama na każdej maszynie JVM?Jak ustawić domyślną karnację JavaFX
Odpowiedz
Można ustawić domyślną skórę:
@Override
public void start(Stage stage) throws Exception {
....
setUserAgentStylesheet(STYLESHEET_CASPIAN);
....
}
http://fxexperience.com/2013/01/modena-new-theme-for-javafx-8/
Możesz ustawić własną skórę, dodając arkusz stylów.
scene.getStylesheets().add(
getClass().getResource("my-skin.css").toExternalForm());
Niestety nie ma domyślnego arkusza stylów. Może przeglądanie w jfxrt.jar może przynieść coś.
Czy są jakieś inne skórki wbudowane w JavaFX, z których mogę korzystać? –
Nie to, że wiem, ale w ogóle nie mam takiego doświadczenia z JavaFX. –
@OttPrime Wpisz odpowiedź; Mam już wystarczającą ilość punktów. –
Domyślny arkusz stylów dla JavaFX 2 to caspian.css. Możesz go znaleźć w jfxrt.jar pod com.sun.javafx.scene.control.skin.caspian. Zmieniło się to w przypadku JavaFX 8 i uważam, że domyślny arkusz stylów nosi nazwę modena.css. Aby uzyskać wspólny arkusz stylów, musisz zdefiniować własne lub skopiować jeden z domyślnych ustawień do swojego projektu.
Można również uruchomić z -Djavafx.userAgentStylesheetUrl = Kaspijskiego na linii poleceń.
Czy to nie jest metoda JavaFX 8? Czy to będzie działać na JRE 7? – OttPrime
@OttPrime Nie nie będzie działać na 7, użyj 'System.setProperty (" javafx.userAgentStylesheetUrl "," CASPIAN ");' – Jurgen
Powyższe będzie działać po uruchomieniu aplikacji jako słoik, ale z jakiegoś powodu nie będzie pracujesz przy uruchamianiu go przy pomocy Java Web Start, czy wiesz dlaczego? Od pewnego czasu borykam się z tym, nie mogę znaleźć powodu. – skjerdalas