ToolTip List Example

目录:

java源码

import java.awt.BorderLayout;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JScrollPane;
import javax.swing.UIManager;


public class ToolTipListExample extends JFrame {

  public ToolTipListExample() {
    super("ToolTip Example");

    String[][] strs "Acinonyx jutatus""Cheetah" },
        "Panthera leo""Lion" }"Canis lupus""Wolf" },
        "Lycaon pictus""Llycaon" }"Vulpes Vulpes""Fox" };

    JList list new JList(createItems(strs)) {
      public String getToolTipText(MouseEvent e{
        int index locationToIndex(e.getPoint());
        if (-index{
          ToolTipItem item (ToolTipItemgetModel().getElementAt(
              index);
          return item.getToolTipText();
        else {
          //return super.getToolTipText();
          return null;
        }
      }
    };
    list.setToolTipText("");

    getContentPane().add(new JScrollPane(list)BorderLayout.CENTER);
  }

  Object[] createItems(String[][] strs{
    ToolTipItem[] items new ToolTipItem[strs.length];
    for (int 0strs.length; i++{
      items[inew ToolTipItem(strs[i][0]strs[i][1]);
    }
    return items;
  }

  class ToolTipItem {
    String obj;

    String toolTipText;

    public ToolTipItem(String obj, String text{
      this.obj obj;
      this.toolTipText text;
    }

    public String getToolTipText() {
      return toolTipText;
    }

    public String toString() {
      return obj;
    }
  }

  public static void main(String args[]) {
    try {
        UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
    catch (Exception evt{}
  
    ToolTipListExample frame new ToolTipListExample();
    frame.addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent e{
        System.exit(0);
      }
    });
    frame.setSize(140150);
    frame.setVisible(true);
  }
}

效果图:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值