2015-03-11 12 views
6

W Swing, były niektóre wyglądają & czuje dostarczane jako części Jawy, np:Interfejs graficzny JavaFX-8 do aplikacji na komputery: czy w Swingie wyglądają i wyglądają?

Platforma Cross:

  • Nimbus
  • Motif
  • Metal

Dotyczy platform:

  • GTK +
  • Windows XP
  • itp

Czy Java 8 Zasilanie Spójrz & Temp dla JavaFX jak to zrobił dla Swing? (Nie pytam o konkretnym Look & czuć w ogóle pytam, czy istnieją Look & Temp dodatkowy do domyślny)

+2

Można utworzyć własny L & F z CSS stylizacji lub wykorzystać istniejące tematy - patrz na przykład: http://docs.oracle.com/javase/8/scene-builder-2/user- guide/stylesheet-support.htm – assylias

+4

[AquaFX] (http://aquafx-project.com/index.html) zapewnia wygląd i sposób działania systemu Mac OS innej firmy. –

+0

Cóż ... jeśli chcesz te LaF-y, to dlaczego miałbyś używać JavaFX? Mam na myśli, że to huśtawka. –

Odpowiedz

8

będę odpowiedzieć na moje własne pytanie z podsumowaniem odpowiedzi na to pytanie, a z niewiele badań zrobiłem sam:

  • W JavaFX, nie ma Look & Zapraszam już termin, ale istnieją Arkusze stylów
  • Do JavaFX-8 (czyli wersja Java 8), nie było tylko jeden z arkuszy stylów o nazwie Caspian
  • Począwszy od środowiska JavaFX-8 dodano nowy arkusz stylów o nazwie Modena. Modena stylów jest domyślny w JavaFX-8

Jest możliwe, aby przełączyć między Modena i Caspian stylów za pomocą następujących poleceń:

setUserAgentStylesheet(STYLESHEET_CASPIAN); // Switches to "Caspian" 
setUserAgentStylesheet(STYLESHEET_MODENA); // Switches to "Modena" 

Należy pamiętać, że :

  • setUserAgentStylesheet(String url) sposób klasy Application
  • Stałe STYLESHEET_CASPIAN i STYLESHEET_MODENA należą do klasy o Application
  • kodu przedstawiono powyżej powinien zostać wywołana w JavaFX Application nici
  • STYLESHEET_CASPIAN i STYLESHEET_MODENA zawierają url s.Możesz używać własnych stylów przy użyciu metody, przekazując mu link do arkusza

    • Na przykład, gdybym stworzył stylów o nazwie DarkTheme.css i umieścić go w katalogu projektu, pod src/zasoby, chciałbym użyć następującego kodu, aby go zastosować: setUserAgentStylesheet(this.getClass().getResource("resources/DarkTheme.css").toExternalForm());

    • Jeśli chcesz tylko przedłużyć bieżącego arkusza stylów, a nie określają to wszystko od podstaw, można użyć zamiast: scene.getStylesheets().add(this.getClass().getResource("resources/DarkTheme.css").toExternalForm());

Powiązane problemy