【问题标题】:JOptionPane does not show the icon, why?JOptionPane 不显示图标,为什么?
【发布时间】:2022-01-08 09:54:09
【问题描述】:

我看不到带有这些代码行的图标,尽管它应该可以工作。 代码如下:

    import java.awt.Image;
    
    import javax.swing.ImageIcon;
    import javax.swing.JOptionPane;
    
    public class IconOfDialog {
    
        public static void main(String[] args) {
    
            ImageIcon orignalIcon = new ImageIcon("/Images/icons8-ok-100.png");
            Image iconImage = orignalIcon.getImage().getScaledInstance(20, 20, java.awt.Image.SCALE_SMOOTH);
            ImageIcon okIcon = new ImageIcon(iconImage);
            
            JOptionPane.showConfirmDialog(null, "Successfully connect to the database",
                                "Successful Connection", JOptionPane.DEFAULT_OPTION, JOptionPane.INFORMATION_MESSAGE, okIcon);
        }
    
    }

结果无一例外:

【问题讨论】:

  • 简单来说...图片文件找不到,路径错误,文件名错误,或者损坏。您的图像所在的目录实际上是命名为Images 还是命名为images(全部小写)。尝试使用图像的实际完整路径,看看是否有效。如果找不到文件,new ImageIcon("somefile") 不会抛出异常,它只是返回 null。 Give this SO Post a thorough read

标签: java image swing joptionpane imageicon


【解决方案1】:

您的代码对我有用,请确保图像的namepath 正确。

Click to view the screenshot

【讨论】:

  • 这只是一个评论会更好。
  • 你能把你屏幕上的内容发给我吗?我在想是不是图片太大了?
  • @RedRabbit 我添加了一个截图。我不认为图像大小是问题,我测试了一个尺寸为 21600*10800px 和大小为 28.3MB 的图像,它可以工作。
猜你喜欢
  • 2023-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多