Peter Penzov
Peter Penzov

Reputation: 1658

How to set JavaFX default skin

I noticed that when I run JavaFX application on JVM 7 and JVM 8 I get different default skins. How I can set the default skin to be same on every JVM?

Upvotes: 9

Views: 16412

Answers (4)

Brian Blonski
Brian Blonski

Reputation: 1802

You can also run with -Djavafx.userAgentStylesheetUrl=caspian on the command line.

Upvotes: 2

user1285928
user1285928

Reputation: 1476

You can set the default skin:

@Override 
public void start(Stage stage) throws Exception {
    ....
    setUserAgentStylesheet(STYLESHEET_CASPIAN);
    ....
}

http://fxexperience.com/2013/01/modena-new-theme-for-javafx-8/

Upvotes: 11

OttPrime
OttPrime

Reputation: 1938

The default stylesheet for JavaFX 2 is caspian.css. You can find it in jfxrt.jar under com.sun.javafx.scene.control.skin.caspian. This changed with JavaFX 8 and I believe the default stylesheet is named modena.css. In order to get a common stylesheet, you will have to either define your own or copy one of the defaults into your project.

Upvotes: 6

Joop Eggen
Joop Eggen

Reputation: 109547

You can set your own skin by adding a style sheet.

scene.getStylesheets().add(
    getClass().getResource("my-skin.css").toExternalForm());

Unfortunately there is no default style sheet. Maybe browsing in jfxrt.jar might yield something.

Upvotes: 1

Related Questions