繁体   English   中英

Jbutton setTooltip()作为ImageIcon吗?

[英]Jbutton setTooltip() as ImageIcon?

我环顾四周,并查看了这里的各种主题。 我发现最接近我要尝试的那个是这个:

将鼠标悬停在JButton上并显示一条消息

基本上,我试图替换button.setToolTipText(“”); 与ImageIcon。 我将其用作您将在JFrame中访问的下一页的预览,以向用户提供下一页的想法或快速概述。 (我想出了图像,只是没有找到工具提示)。

这是我根据各种线程中所看到的内容尝试使用的方法,但是显然它没有用,因此我在问这个问题。

我使用的代码: Log.setToolTip(new ImageIcon(getIconLog));

您可以使用MouseListenerJLabel作为工具提示。 像这样...

public static void main(String[] args){
     final JFrame f = new JFrame();
     f.setSize(500, 400);
     f.setVisible(true);
     f.setLayout(null);
     f.setDefaultCloseOperation(3);

     final JButton b = new JButton("ToolTip");
     b.setBounds(100, 100, 70, 70);
     f.add(b);

     final JLabel toolTip = new JLabel();
     b.addMouseListener(new MouseListener() {

        @Override
        public void mouseReleased(MouseEvent e) {

        }

        @Override
        public void mousePressed(MouseEvent e) {

        }

        @Override
        public void mouseExited(MouseEvent e) {
            f.remove(toolTip);
            f.repaint();
        }

        @Override
        public void mouseEntered(MouseEvent e) {
            try {
                toolTip.setIcon(new ImageIcon(ImageIO.read(new File("your image"))));
            } catch (IOException e1) {
                e1.printStackTrace();
            }
            toolTip.setBounds(b.getLocation().x+b.getWidth(), b.getLocation().y-b.getHeight(), 100, 50);
            f.add(toolTip);
            f.repaint();
        }

        @Override
        public void mouseClicked(MouseEvent e) {

        }
    });

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM