gpt4 book ai didi

java - 设置 Java 文本框中的文本颜色

转载 作者:行者123 更新时间:2023-12-02 00:55:24 25 4
gpt4 key购买 nike

如何在运行时设置 Java Swing 文本框中文本的颜色?启动时,颜色为灰色,当用户输入文本框时,我希望将颜色更改为正常文本颜色。我目前正在使用以下代码:

private void txtScheduleInfoFocusGained(java.awt.event.FocusEvent evt)                                            
{
try
{
if (currentClassIsNewClass() && txtScheduleInfo.getDocument().getText(0, txtScheduleInfo.getDocument().getLength()).equals(PASTE_SI_HERE))
{
txtScheduleInfo.setText("");
txtScheduleInfo.setForeground(java.awt.SystemColor.textText);
}
}
catch (BadLocationException ex)
{
JOptionPane.showMessageDialog(this, "BLE\nContact Zian", "Unexpected Problem", JOptionPane.ERROR_MESSAGE);
}
}

此时,当代码运行时,文本仍然显示为灰色。

附加代码:
声明(作为字段):

   private javax.swing.JTextPane txtScheduleInfo;

实例化:

txtScheduleInfo = new javax.swing.JTextPane();

初始化:

txtScheduleInfo.setForeground(java.awt.SystemColor.textInactiveText);
txtScheduleInfo.setText("Paste schedule information here");
txtScheduleInfo.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusGained(java.awt.event.FocusEvent evt) {
txtScheduleInfoFocusGained(evt);
}
public void focusLost(java.awt.event.FocusEvent evt) {
txtScheduleInfoFocusLost(evt);
}
});

最佳答案

您确定 JTextBox 已启用吗?您可以对其调用 setEnabled(true) 进行确认。无意粗鲁,这只是最可能的原因(Swing 中有代码强制禁用的组件变灰)。

如果这不能解决问题,您还可以通过调用 txtScheduleInfo.repaint() 来触发重绘,这可能会导致重绘。

如果这些都没有帮助,您可以发布一些代码,以便我们看看发生了什么。

关于java - 设置 Java 文本框中的文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/900360/

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