如何为 Java 中的 JList 的每个项目设置工具提示文本?


JList JComponent 类的子类,它可用于显示允许用户选择一个或多个项目的对象列表。JList 可以生成一个 ListSelectiionListener 接口,需要实现抽象方法 valueChanged()JToolTip 类用于显示组件的文本或提示,我们可以通过实现 JToolTip 类的 getToolTipText() 方法为列表的每个项目设置工具提示文本。

示例

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
public class JListTooltipTest extends JFrame {
   private Vector vector;
   public JListTooltipTest() {
      setTitle("JListTooltip Test");
      setLayout(new FlowLayout());
      vector = new Vector();
      for (int i=1; i < 15; i++) {
         vector.addElement("Item #" + i);
      }
      final JList list = new JList(vector) {
         public String getToolTipText(MouseEvent me) {
            int index = locationToIndex(me.getPoint());
            if (index > -1) {
               String item = (String) getModel().getElementAt(index);
               return "Tooltip for " + item;
            }
            return null;
         }
      };
      list.setToolTipText("");
      add(new JScrollPane(list));
      setSize(375, 250);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public static void main(String[] args) {
      new JListTooltipTest();
   }
}

输出

更新于:2020-02-10

528 次浏览

开启您的 职业 生涯

完成课程,获得认证

开始
广告
© . All rights reserved.