【问题标题】:How to add hint text in a Textfield in JavaFX如何在 JavaFX 的文本字段中添加提示文本
【发布时间】:2016-03-08 05:54:21
【问题描述】:

我想在文本字段中添加一些提示文本,例如“姓名”或“姓氏”。我创建这样的文本字段 TextField userTextField = new TextField(); ,但我找不到如何做到这一点。在这里,我刚刚找到了这个Clear prompt text in JavaFX TextField only when user starts typing,但我不敢相信这是唯一的方法。还是我错了?

【问题讨论】:

  • 那个问题是关于修改默认行为,即如果文本字段有焦点,则提示文本不可见。如果您需要修改该行为,那么您需要按照这些方式做一些事情。如果您对默认行为感到满意,请致电 userTextField.setPromptText(...);
  • 我已经尝试过TextField userTextField.setPromptText("name");,但它不起作用。几分钟前我发现我必须这样做userTextField.setFocusTraversable(false);事实上它有效。
  • 该调用对我来说一直都很好,但是如果文本字段有焦点,您将不会看到提示文本。如果您拨打setFocusTraversable(false),这不会降低用户体验(用户无法按“tab”导航到文本字段)?
  • 是的,如果该字段具有焦点,您将看不到提示文本,但在这种情况下我很幸运,因为包含该文本字段的 UI 在启动时没有焦点。此外,用户不需要按“tab”,因为该文本字段是 UI 中唯一存在的字段

标签: text javafx textfield hint


【解决方案1】:

我是这样做的:

userTextField.setPromptText("name"); //to set the hint text
userTextField.getParent().requestFocus(); //to not setting the focus on that node so that the hint will display immediately

【讨论】:

    猜你喜欢
    • 2016-05-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-31
    • 1970-01-01
    • 2016-01-12
    • 2017-12-17
    • 1970-01-01
    • 2020-06-08
    相关资源
    最近更新 更多