java - 为什么 getImage() 不返回错误或不显示图像?

标签 java swing

我正在尝试使用 getImage() 在我正在编写的应用程序中的 JPanel 上显示图像。我尝试过并试图让它为我工作,最终发现即使路径完全不正确,它仍然不起作用,也不会像预期的那样返回 NullPointerException 。

Image i;    

public void paintComponent(Graphics g) {
    super.paintComponent(g);

    Graphics2D g2d = (Graphics2D)g;
    g2d.drawImage(i, 0, 0, 200, 200, this);
} // end paintComponent();

public Pnl() {
    super();
    setBackground(Color.GREEN);
    setBorder(BorderFactory.createLineBorder(Color.GRAY, 10));
    i = Toolkit.getDefaultToolkit().getImage("shrek.jpg");
} // end constructor    

当我使用 getImage() 中的“shrek...jdhhd”或类似参数运行代码时,它会执行完全相同的操作。

最佳答案

I'm trying to use getImage() do display an image on a

当您发布问题时,会发布适当的 SSCCE如果您需要帮助,否则我们会花时间猜测。

例如,图像可能被正确读取,但问题是面板的大小为 (0, 0),因此没有任何内容可绘制。

您还应该重写 getPreferredSize() 方法以返回 (200, 200) 的尺寸,因为这是您想要绘制图像的尺寸。

如果没有 SSCCE 显示该面板如何使用的上下文,我们只是猜测。

关于java - 为什么 getImage() 不返回错误或不显示图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19473005/

相关文章:

java - 在 Spring Security UsernamePasswordAuthenticationFilter JWT 认证中设置自定义登录 url

java - 对 MongoDB 的 java 驱动程序中的重复唯一键错误使用react

java - 如何使用 opensaml 验证 (azure) saml xml 响应?

java - 使用滚动条或微调器的值设置 FillRect() 的颜色

java - 安卓上的 Jeromq : No virtual method clear()Ljava/nio/ByteBuffer

java - 关于JAVA Post中的字符代码转换

Java - Gui 组件不显示

java - 如何在 JTextArea 中按下空格键后调用方法

java - java应用程序中的全屏模式

Java - 在 Windows 10 上调用 Paint(),但在 OSX 10.10.5 上不调用