JavaFX 默认元素
JavaFX default element
所以我才刚刚开始学习 JavaFX,我用 Scene Builder 制作了几个 TextFields。我为每个 TextField 分配了一些提示文本,但是当我启动我的应用程序时,第一个 TextField 已经被选中,所以我看不到提示文本。我可以做点什么吗?
一种解决方案是在 TextField
获得焦点时使提示文本保持可见。
提示文本消失的原因是因为modena.css
(JavaFX 8+中使用的默认样式表)在TextField
获得焦点时使提示文本的填充透明。您可以通过使用自己的 CSS 来设置提示文本的样式来更改此设置。有几种方法可以做到这一点:
CSS 文件:
.text-field:focused {
-fx-prompt-text-fill: inherit;
}
代码:
textField.setStyle("-fx-prompt-text-fill: inherit;");
请注意,您可以从 Scene Builder 中设置 style
。
所以我才刚刚开始学习 JavaFX,我用 Scene Builder 制作了几个 TextFields。我为每个 TextField 分配了一些提示文本,但是当我启动我的应用程序时,第一个 TextField 已经被选中,所以我看不到提示文本。我可以做点什么吗?
一种解决方案是在 TextField
获得焦点时使提示文本保持可见。
提示文本消失的原因是因为modena.css
(JavaFX 8+中使用的默认样式表)在TextField
获得焦点时使提示文本的填充透明。您可以通过使用自己的 CSS 来设置提示文本的样式来更改此设置。有几种方法可以做到这一点:
CSS 文件:
.text-field:focused { -fx-prompt-text-fill: inherit; }
代码:
textField.setStyle("-fx-prompt-text-fill: inherit;");
请注意,您可以从 Scene Builder 中设置
style
。