更改提示文本javafx的字体



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

我该怎么做?

目前,通过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");

atrribute的含义和它可以采用的值在"JavaFXCSS参考"指南中解释了它们的局限性。参考它,花一些时间了解JavaFX中的基本样式。

您可以使用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

最新更新