首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于桌面应用程序的JavaFX-8GUI:在Swing中有外观和感觉吗?

用于桌面应用程序的JavaFX-8GUI:在Swing中有外观和感觉吗?
EN

Stack Overflow用户
提问于 2015-03-11 15:54:25
回答 1查看 2.9K关注 0票数 6

在Swing中,有一些外观和感觉是Java的一部分,例如:

跨平台:

  • 尼姆布斯
  • 母题
  • 金属

特定于平台的

  • GTK+
  • Windows XP
  • 等。

Java8的供应看上去像Swing一样适合JavaFX吗?(我不问特定的外观和感觉,我一般会问,除了默认的外观之外,是否还有其他的外观和感觉)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-14 15:02:13

我将用对这个问题的答复的摘要和我自己做的一些研究来回答我自己的问题:

  • 在JavaFX中,不再存在外观和感觉术语,但是有样式表
  • 直到JavaFX-8 (即Java 8版本),只有一个提供的样式表,名为里海
  • 从JavaFX-8开始,添加了另一个样式表,名为ModenaModena样式表是JavaFX-8中的默认样式表。

可以使用以下命令在Modena里海样式表之间切换:

代码语言:javascript
复制
setUserAgentStylesheet(STYLESHEET_CASPIAN); // Switches to "Caspian"
setUserAgentStylesheet(STYLESHEET_MODENA);  // Switches to "Modena"

请注意:

  • setUserAgentStylesheet(String url)是类Application的一个方法。
  • 常量STYLESHEET_CASPIANSTYLESHEET_MODENAApplication的类成员。
  • 上面所示的代码应该在JavaFX Application线程上调用。
  • STYLESHEET_CASPIANSTYLESHEET_MODENA包含 url 。您可以使用该方法使用自己的样式表,将它传递给样式表。
代码语言:javascript
复制
- For example, if I created a stylesheet named **DarkTheme.css** and placed it in the project directory, under **src/resources**, I would use the following code to apply it: `setUserAgentStylesheet(this.getClass().getResource("resources/DarkTheme.css").toExternalForm());`
- If you just want to **extend** the current stylesheet, and not to define it all from scratch, you may use instead: `scene.getStylesheets().add(this.getClass().getResource("resources/DarkTheme.css").toExternalForm());`

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28991389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档