2013-06-25 8 views

Répondre

9

Vous pouvez définir la peau par défaut:

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

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

+0

N'est-ce pas une méthode JavaFX 8? Cela fonctionnera-t-il sur JRE 7? – OttPrime

+2

@OttPrime Non, il ne fonctionnera pas sur 7, utilisez 'System.setProperty (" javafx.userAgentStylesheetUrl "," CASPIAN ");' – Jurgen

+0

Ce qui précède fonctionnera lors du lancement de l'application comme un pot, mais pour une raison quelconque ne sera pas travailler lors du lancement en utilisant Java Web Start, aucune idée pourquoi? Je me bats avec ça depuis un moment maintenant, je n'arrive pas à trouver une raison pour ça. – skjerdalas

2

Vous pouvez définir votre propre apparence en ajoutant une feuille de style.

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

Malheureusement, il n'y a pas de feuille de style par défaut. Peut-être que naviguer dans jfxrt.jar pourrait rapporter quelque chose.

+0

Y a-t-il d'autres skins intégrés à JavaFX que je peux utiliser? –

+0

Pas que je sache, mais je ne suis pas du tout expérimenté avec JavaFX. –

+0

@OttPrime Faites-en une réponse; J'ai déjà suffisamment de points. –

6

La feuille de style par défaut pour JavaFX 2 est caspian.css. Vous pouvez le trouver dans jfxrt.jar sous com.sun.javafx.scene.control.skin.caspian. Cela a changé avec JavaFX 8 et je crois que la feuille de style par défaut s'appelle modena.css. Pour obtenir une feuille de style commune, vous devrez soit définir la vôtre, soit copier l'une des valeurs par défaut dans votre projet.

2

Vous pouvez également exécuter avec -Djavafx.userAgentStylesheetUrl = caspienne sur la ligne de commande.

Questions connexes