gpt4 book ai didi

java - 图像不会立即在 Swing Java 桌面应用程序中绘制/加载

转载 作者:行者123 更新时间:2023-11-30 09:48:10 26 4
gpt4 key购买 nike

当我运行使用 Netbean 的 Swing 创建的 Java 桌面应用程序时,JLabel 图标图像会立即加载,但 JPanel 上的背景图像在我唤醒(重新调整)窗口之前不会绘制到屏幕上。

这是我的 JPanel 上的自定义代码:

Image image = java.awt.Toolkit.getDefaultToolkit().getImage(getClass().getResource("/images/background.gif"));
javax.swing.JPanel panelBackground = new BackgroundPanel(image);

有没有更好的方式来调用图片?是否有我应该实现的图像处理代码?

我该如何解决?

最佳答案

对我来说效果很好。我使用 Background Panel 测试了它.发布您的 SSCCE如果您还有问题。

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

public class BackgroundSSCCE extends JPanel
{
public BackgroundSSCCE()
{
setLayout( new BorderLayout() );
Image duke = java.awt.Toolkit.getDefaultToolkit().getImage(getClass().getResource("dukeWaveRed.gif"));
BackgroundPanel test = new BackgroundPanel(duke, BackgroundPanel.ACTUAL, 1.0f, 0.5f);
add(test);
}

private static void createAndShowUI()
{
JFrame frame = new JFrame("BackgroundSSCCE");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add( new BackgroundSSCCE() );
frame.setSize(200, 200);
frame.setLocationRelativeTo( null );
frame.setVisible( true );
}

public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
createAndShowUI();
}
});
}
}

关于java - 图像不会立即在 Swing Java 桌面应用程序中绘制/加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6379474/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com