温馨提示:本文翻译自stackoverflow.com,查看原文请点击:css - Add red asterisk to the beginning of text to a javafx label
css javafx

css - 在文本开头的Javafx标签上添加红色 Asterisk

发布于 2020-03-29 21:59:15

我有一个场景(在SceneBuilder中创建),该场景带有许多标签,我想通过在标签文本的开头添加红色 Asterisk 来将其中一些显示为必填字段。我看不到如何在SceneBuilder中执行此操作。有没有一种使用CSS的方法。

下面是FXML文件的标签片段:

            <Label fx:id="lblFirstName" alignment="CENTER_RIGHT" prefHeight="17.0" prefWidth="295.0" text="First Name:" GridPane.columnIndex="1" GridPane.rowIndex="2">
               <padding>
                  <Insets right="10.0" />
               </padding>
            </Label>

到目前为止,我发现的所有内容都与HTML文件有关。

查看更多

提问者
Yasterfari
被浏览
98
Amarildo 2020-01-31 20:07

色拉建议很好,但我建议使用验证的另一种方法。
请注意,此方法需要ControlsFX库和控制器中的一些代码(不能像您提到的那样在CSS中完成)。
在您的控制器类中创建一个验证器:

ValidationSupport validationSupport = new ValidationSupport();

在初始化方法内将验证(作为必填字段)添加到您的节点(在此示例中为TextField):

validationSupport.registerValidator(myTextField, Validator.createEmptyValidator("Field is required"));

现在,当您运行应用程序时,所需的TextField将如下所示: 验证文本字段

如果焦点从TextField丢失,并且其中没有任何文本,它将显示一个红色X,如下所示: 验证通过