【问题标题】:Swing JTextArea caret eventsSwing JTextArea 插入符号事件
【发布时间】:2014-08-18 07:53:32
【问题描述】:

插入符号“闪烁”时是否触发了任何事件?

(不是位置改变或属性改变等,而是插入符号水平线的闪烁)

JTextField 如何显示提示(当用户开始输入时会消失):

和 JTextArea 中使用的相同的功能:

如您所见,插入符号闪烁时,第一个字母被覆盖。

【问题讨论】:

  • “插入符号“闪烁”时是否会触发任何事件?”您到底为什么需要检测它?
  • :) 我已经更新了问题
  • 在 JTextArea 的情况下插入符号闪烁时重新绘制提示会很棒
  • 发布stackoverflow.com/help/mcve 并描述您实际想要实现的目标(例如“如何在 JTextArea 中显示这样的提示”)。在任何情况下,由于闪烁而收到的唯一“事件”是重绘事件,但您通常不应该关心它们。

标签: java swing jtextarea caret


【解决方案1】:

检查 DefaultCaret 的方法

protected synchronized void damage(Rectangle r)

你可以覆盖它并在那里添加你的代码

【讨论】:

  • 感谢您的建议,但不幸的是,当组件可见且未触发任何其他事件时,它不起作用
  • 对不起,我终于明白了。它按我的预期工作,谢谢!
【解决方案2】:

在 JTextArea 的情况下插入符号闪烁时重新绘制提示会很棒

查看Text Prompt 以获取在文本字段中显示“提示”且不需要您使用插入符号的解决方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-19
    • 1970-01-01
    • 1970-01-01
    • 2013-05-21
    • 2011-08-22
    • 2013-07-18
    • 2011-11-06
    • 1970-01-01
    相关资源
    最近更新 更多