java - 在 Java Swing 中为特定组件设置 Tooltip 延迟时间

标签 java performance swing user-interface tooltip

我正在尝试在 JEditorPane 上设置工具提示。我用来确定要显示的工具提示文本的方法是相当 CPU 密集型的 - 所以我只想在鼠标停止一小段时间后才显示它 - 比如 1 秒。

我知道我可以使用 ToolTipManager.sharedInstance().setInitialDelay(),但是这会同时为所有 Swing 组件上的工具提示设置延迟时间,我不希望这样。

最佳答案

如果您想要使特定组件的工具提示关闭延迟更长,那么这是一个不错的技巧:

(感谢 http://tech.chitgoks.com/2010/05/31/disable-tooltip-delay-in-java-swing/ 的技术人员)

private final int defaultDismissTimeout = ToolTipManager.sharedInstance().getDismissDelay();

addMouseListener(new MouseAdapter() {

  public void mouseEntered(MouseEvent me) {
    ToolTipManager.sharedInstance().setDismissDelay(60000);
  }

  public void mouseExited(MouseEvent me) {
    ToolTipManager.sharedInstance().setDismissDelay(defaultDismissTimeout);
  }
});

关于java - 在 Java Swing 中为特定组件设置 Tooltip 延迟时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1190290/

相关文章:

java - bundle 失去值(value)

java - 在 JAVA 中使用 BLOB 获得更好的性能

Java catch 游戏

java - 用于匹配行数和每行字符数的正则表达式

Java:如何根据对象的类型动态创建指定类型的数组?

java - 为什么我的 native C++ 代码在 Android 上的运行速度比 Java 慢得多?

mysql - 建议使用替代查询来提高性能?

java - 如何使用已从 Cotainer 放置 JLabel 的方法?

java - 获取容器中的所有 swing 组件

java - 从 ViewModel 调用变量的最佳实践