为可过滤和可编辑的jComboBox项设置工具提示

时间:2015-03-10 14:45:29

标签: java swing jcombobox netbeans-8 jtooltip

我有一个可过滤和可编辑的JComboBox。 我想为JComboBox中的每个项目设置一个工具提示 - 我想我应该使用JToolTip。

我尝试使用此链接中的答案:Java Swing: Mouseover text on JComboBox items?

但是当JComboBox显示过滤项时,JToolTip索引的顺序会发生变化。在这种情况下,我不知道如何为每个JComboBox项设置正确的JToolTip文本。

如果你能就这个问题给我一些建议,我将不胜感激。

1 个答案:

答案 0 :(得分:1)

  

jComboBox是可过滤和可编辑的。

如果组合框可编辑且用户将新项目添加到组合框,您如何提供工具提示?

  

但是当jComboBox显示过滤的项目时,jToolTip索引的顺序会发生变化。

不要将您的查找基于索引。相反,您需要将查找基于项(或项的toString()值)。为此,您可以使用HashMap

HashMap<String, String> tooltips = new HashMap<String, String>();
tooltips.put("A", "tooltip for item A");
tooltips.put("B", "tooltip for item B");

然后在渲染器中,您可以使用:

String tooltip = tooltips.get( value.toString() );