java - 仅 jlabel 的鼠标单击事件正确更新 jlabel 文本属性

标签 java swing jlabel

我正在使用 java 线程来更新应用程序中的 jlabel 文本值 但在更新 jlabel 上的文本之后 jlabel 通过刷新自身定期显示所有过去的更新值和新值

但是当我在 jlabel 的 mouseclick 事件中使用相同的更新函数时,它会按照我的预期更新自身并仅显示最后一个值

什么可能导致这个问题 我是否缺少 mouseclick 事件内部调用的一些方法?

nore:应用程序是 japplet

最佳答案

不确定到底发生了什么,但我首先要确保您的更新发生在事件调度线程中。让您的更新线程调用:

SwingUtilities.invokeLater(new Runnable() {
  public void run() {
    // ...update the text...
  }
});

请参阅Event Dispatch Thread教程。

关于java - 仅 jlabel 的鼠标单击事件正确更新 jlabel 文本属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1686188/

相关文章:

java - 将数据从 netbeans 中的另一个表单添加到 JTable

java - 在带有动态文本的 Jlabel(标签)框中设置背景图像

java - 在 java 中使用 BoxLayout 管理器和 JLabels

Java - 异常的 GridLayout 行为

java - Intellij IDEA 和 Spring Boot : how to restart only parts of my java code?

java - 无法在 Java 中从 OpenDS Activity 目录创建和获取用户

java - 如何在以下代码中根据我的喜好设置 JTextArea 和 JTextField 的大小?

java - Hibernate 忽略 ManyToMany 连接列的可空性

java - 如何启动真实类(class)的模拟

java - 如何在java swing中的jframe中添加图像?