1

我在 javafx 中创建了一个登录页面。问题是我想更改文本字段中提示文本的字体。我尝试将参数作为类型标签和文本传递,但它不会接受除字符串之外的任何内容。我将如何做到这一点(不使用 css、hacks 等,因为我仍然是一个菜鸟)?我想改变所有的颜色、尺寸和风格。

我该怎么做?

4

2 回答 2

3

目前,通过 Java API 更改样式是不可能的,但它将在 JavaFX 框架的未来版本中提供。目前您可以将样式设置为字符串,想想嵌入的 CSS:

TextField textField = new TextField("Sample");
textField.setStyle(""
        + "-fx-font-size: 30px;"
        + "-fx-font-style: italic;"
        + "-fx-font-weight: bold;"
        + "-fx-font-family: fantasy;"
        + "-fx-text-fill: blue;"
        + "-fx-background-color: aqua");

属性的含义和它可以采用的值在“JavaFX CSS 参考”指南中解释了它们的限制。参考它并花一些时间来掌握 JavaFX 中的基本样式。

于 2013-08-26T16:02:08.623 回答
1

您可以使用 Font.font 静态方法来更改文本的字体。

 Text text = new Text(50, 50, "Roboto");
 text.setFill(Color.RED);
 text.setFont(Font.font("Serif", 20)); // this will change font of your text to size 20 and family Serif
于 2014-12-03T09:59:20.923 回答