Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将鼠标悬停在缩略图上时显示完整图像作为弹出/覆盖_Java_Image_Swing_Overlay - Fatal编程技术网

Java 将鼠标悬停在缩略图上时显示完整图像作为弹出/覆盖

Java 将鼠标悬停在缩略图上时显示完整图像作为弹出/覆盖,java,image,swing,overlay,Java,Image,Swing,Overlay,我在JPanel中显示缩略图。当鼠标悬停在这样一个缩略图上时,我想在缩略图上方的覆盖图中显示它的完整版本 使用HTML,我只需要创建一个具有适当位置和高z索引的div,以便它覆盖所有其他内容。 Swing是否有类似的轻量级功能?一种方法是使用工具提示 import javax.swing.*; import java.awt.GridLayout; class ThumbTip { private static final String HTML = "<html><

我在JPanel中显示缩略图。当鼠标悬停在这样一个缩略图上时,我想在缩略图上方的覆盖图中显示它的完整版本

使用HTML,我只需要创建一个具有适当位置和高z索引的div,以便它覆盖所有其他内容。
Swing是否有类似的轻量级功能?

一种方法是使用工具提示

import javax.swing.*;
import java.awt.GridLayout;

class ThumbTip {

    private static final String HTML = "<html><body>";

    ThumbTip(String[] album) {
        JPanel p = new JPanel(new GridLayout(1,0,2,2));
        for (String url : album) {
            String s = HTML + "<img src='" + url.toString() + "'";
            String size = " width=200 height=150";
            JLabel l = new JLabel(s + size + ">");
            l.setToolTipText(s + ">");
            p.add(l);
        }
        JOptionPane.showMessageDialog(null, p);
    }

    public static void main(String[] args) {
        final String[] urls = {
            "http://pscode.org/media/stromlo1.jpg",
            "http://pscode.org/media/stromlo2.jpg"
        };
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                new ThumbTip(urls);
            }
        });
    }
}

import javax.swing.*;
导入java.awt.GridLayout;
类拇指尖{
私有静态最终字符串HTML=“”;
拇指提示(字符串[]相册){
JPanel p=新JPanel(新网格布局(1,0,2,2));
用于(字符串url:album){
字符串s=HTML+“”);
l、 setToolTipText(s+“>”);
p、 加(l);
}
showMessageDialog(null,p);
}
公共静态void main(字符串[]args){
最终字符串[]URL={
"http://pscode.org/media/stromlo1.jpg",
"http://pscode.org/media/stromlo2.jpg"
};
SwingUtilities.invokeLater(新的Runnable(){
公开募捐{
新的拇指提示(URL);
}
});
}
}
注:
  • 在这个演示中。每次使用时,都会从网络下载工具提示图像。耐心点
  • 我没有费心去“缩略”原始图像不包括电池”。源代码的最新编辑使用HTML(为
    图像
    指定的
    宽度
    /
    高度
    )来缩小“缩略图”。我不会更新截图
  • 最终,建议使用
    JWindow
    更好,因为它可以让您更好地控制弹出窗口的显示位置、显示时间以及确切的外观。但这项技术要短得多
    一种方法是使用工具提示

    import javax.swing.*;
    import java.awt.GridLayout;
    
    class ThumbTip {
    
        private static final String HTML = "<html><body>";
    
        ThumbTip(String[] album) {
            JPanel p = new JPanel(new GridLayout(1,0,2,2));
            for (String url : album) {
                String s = HTML + "<img src='" + url.toString() + "'";
                String size = " width=200 height=150";
                JLabel l = new JLabel(s + size + ">");
                l.setToolTipText(s + ">");
                p.add(l);
            }
            JOptionPane.showMessageDialog(null, p);
        }
    
        public static void main(String[] args) {
            final String[] urls = {
                "http://pscode.org/media/stromlo1.jpg",
                "http://pscode.org/media/stromlo2.jpg"
            };
            SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                    new ThumbTip(urls);
                }
            });
        }
    }
    

    import javax.swing.*;
    导入java.awt.GridLayout;
    类拇指尖{
    私有静态最终字符串HTML=“”;
    拇指提示(字符串[]相册){
    JPanel p=新JPanel(新网格布局(1,0,2,2));
    用于(字符串url:album){
    字符串s=HTML+“”);
    l、 setToolTipText(s+“>”);
    p、 加(l);
    }
    showMessageDialog(null,p);
    }
    公共静态void main(字符串[]args){
    最终字符串[]URL={
    "http://pscode.org/media/stromlo1.jpg",
    "http://pscode.org/media/stromlo2.jpg"
    };
    SwingUtilities.invokeLater(新的Runnable(){
    公开募捐{
    新的拇指提示(URL);
    }
    });
    }
    }
    
    注:
  • 在这个演示中。每次使用时,都会从网络下载工具提示图像。耐心点
  • 我没有费心去“缩略”原始图像不包括电池”。源代码的最新编辑使用HTML(为
    图像
    指定的
    宽度
    /
    高度
    )来缩小“缩略图”。我不会更新截图
  • 最终,建议使用
    JWindow
    更好,因为它可以让您更好地控制弹出窗口的显示位置、显示时间以及确切的外观。但这项技术要短得多
    制作一个JFrame:;我曾经重写JComponent并创建自己的自定义弹出窗口或未装饰的JWindow。我支持JWindow的想法,相对于鼠标/缩略图定位。这是我最初的想法。@HovercraftFullOfEels我在对答案的编辑中指出,
    JWindow
    是更好的解决方案。想把那个评论升级成一个答案,这样我就可以表达我的赞成票了吗;我曾经重写JComponent并创建自己的自定义弹出窗口或未装饰的JWindow。我支持JWindow的想法,相对于鼠标/缩略图定位。这是我最初的想法。@HovercraftFullOfEels我在对答案的编辑中指出,
    JWindow
    是更好的解决方案。是否愿意将该评论升级为一个答案,以便我能表达我的赞成票?@HovercraftFullOfEels FMI(请原谅我的无知),但BNI是什么意思?我理解其他的部分,尤其是LOL;)@请原谅我的无知,但BNI是什么意思?我理解其他的部分,尤其是LOL;)