我试图让 JLabel 显示一个使用相对路径引用图像的 html。但我不能让 JLabel 找到图像。当我使用绝对路径时它工作正常。
我尝试从命令行或 eclipse 运行程序并添加对话框以显示当前工作目录在哪里,但有用。因此,我得出的结论是,没有在当前目录中搜索图像——这让我明白了这一点。图像在哪里寻找?
这是一个测试代码,显示我在做什么:
import javax.swing.*;
public class HTMLLabel extends JFrame {
public HTMLLabel() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JOptionPane.showMessageDialog( this,
System.getProperty("user.dir"));
String html = "<html>\n" +
" <body>\n" +
" <div style=\"text-align: center;\">\n" +
" <img src=\"file://s.png\">\n"+
" </div>\n"+
" </body>\n"+
"</html>";
JLabel label = new JLabel(html);
add(label);
pack();
setVisible(true);
}
public static void main(String[] args) {
new HTMLLabel();
}
}