首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jbutton ()作为ImageIcon?

Jbutton ()作为ImageIcon?
EN

Stack Overflow用户
提问于 2013-12-04 22:26:10
回答 1查看 1K关注 0票数 0

我环顾四周看过不同的线索。我发现最接近我想要做的是这个:

Hovering over JButtons and displaying a message

基本上,我试图用一个button.setToolTipText("");替换ImageIcon。我将此作为您将要访问的JFrame内部下一页的预览,以便向用户提供下一页的想法或快速概述。(我已经算出了影像,而不是ToolTip)。

下面是我根据我在不同线程中看到的内容尝试使用的内容,但是很明显,它没有起作用,因此我提出了这个问题。

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

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-04 22:55:55

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

代码语言:javascript
复制
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) {

        }
    });

}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20387404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档