gpt4 book ai didi

java - 如何修改 JTextField (Swing) 以显示在用户输入文本之前不会消失的提示?

转载 作者:行者123 更新时间:2023-11-30 06:21:36 29 4
gpt4 key购买 nike

好吧,明确地说,我知道如何扩展 JTextField 以保留提示,当用户将光标放在框中时该提示会消失。

我想进一步扩展(或编辑)它。起初,提示以深灰色显示。当用户将光标放在框中时,提示会保留在那里,但会变成浅灰色。如果用户输入任何内容,提示就会消失,文本变为黑色。如果用户清除了他们的输入,提示将以相同的浅灰色返回。如果用户将光标从字段中移开,文本保持不变,颜色保持与以前相同,除非字段现在为空(提示除外),这会导致颜色变为深灰色。

这里的问题是双重的:1-我是 Java 和 UI 应用程序的新手,我找不到在用户输入文本时激活的监听器(InputMethodListener 不能按我想要的方式工作,或者我无法弄清楚如何正确使用它)。 2-我不希望提示是可选的。假设提示是“提示”,那么如果用户来选择框,并在“i”和“n”之间按下鼠标,那么无论如何光标都应该出现在“H”之前。

这是界面:

public HintTextField extends JTextField implements FocusListener {
public HintTextField(String hint) {}
@Override
public void focusGained(FocusEvent e) {} //change color
@Override
public void focusLost(FocusEvent e) {} //change color to darker gray if only hint left in text field
public void textGained() {} //remove hint, only display text, change color to black. if all text removed, show hint, change color to light gray
}

最佳答案

Text Prompt类有不同的选项,应该允许你做你想做的事。

关于java - 如何修改 JTextField (Swing) 以显示在用户输入文本之前不会消失的提示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20301349/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com