始终显示JavaFX的promptText?

时间:2013-09-12 06:30:24

标签: swing javafx-2 javafx textfield

我看到了一个实现TextPrompt的网站。

http://tips4java.wordpress.com/2009/11/29/text-prompt/

在实现中,有一个setShow(Show.ALWAYS)方法来始终显示JTextField是否具有焦点的提示文本。

JTextField tf = new JTextField();
TextPrompt tp = new TextPrompt("Prompt", tf);
tp.setShow(Show.ALWAYS);

有没有办法在JavaFX中实现?

1 个答案:

答案 0 :(得分:4)

方法是覆盖textfield的伪类“focused”的默认css样式。为此,使用此

加载您自己的css文件
.text-field:focused {
    -fx-background-color: -fx-focus-color, -fx-text-box-border, -fx-control-inner-background;
    -fx-background-insets: -0.4, 1, 2;
    -fx-background-radius: 3.4, 2, 2;
    -fx-prompt-text-fill: transparent;  /* <----- Remove this line */
}

内容并从中删除-fx-prompt-text-fill属性。

CSS加载示例https://stackoverflow.com/a/9739698