在Java中设置背景图像
好的,我想说的第一件事是:我知道在java中设置背景图像有许多类似的问题。但是,自从我拿到一个由其他人启动的Java项目后,我的情况有点不同。我相信以前的程序员对于Java GUI编程来说是相当新的,而我自己也是新的Java GUI编程的非常。下面是该程序将不得不做:在Java中设置背景图像
- 设置背景图片是我们的客户的网络地图
- 将带宽映射到相应的客户端是通过一个URL获得
- 刷新带宽图每5秒左右
,以前的程序员也成立了2班,唯一一个是主要的和一个设立,他有一个猴子从URL背景图像
现在,我决定使用MigLayout来组织一个网格,我将把带宽图像放在正确的位置。我遇到了麻烦,所以我决定开始缩小一点,并将猴子背景更改为网络地图。我将地图jpg添加到了src库中,并认为如果将URL切换到File,它会起作用。它并没有和我一直试图改变事情,让它工作,但没有雪茄。
下面是设置背景的代码。这是我第一次尝试发布代码,我希望它的作品:...以及我尝试了几次几次,并搜索了几次,但张贴我的代码没有工作,所以我拍了一个屏幕截图。今天什么都没有为我工作。
我得到的错误是:
Exception in thread "main" java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(Unknown Source)
at bwMonBackground.<init>(bwMonBackground.java:21)
at bwMonBackgroundMain.main(bwMonBackgroundMain.java:7)
编辑:我注释掉了18行下面是主要的:
public class bwMonBackgroundMain extends bwMonBackground{
public static void main(String[] args)
{
bwMonBackground frame = new bwMonBackground();
migLayout testing = new migLayout();
testing.createLayout();
frame.setVisible(true);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
}
}
编辑2:有一次,我在bwMonBackground注释掉了18行。 java我得到以下错误:
javax.imageio.IIOException: Can't read input file!
at javax.imageio.ImageIO.read(Unknown Source)
at bwMonBackground.<init>(bwMonBackground.java:15)
at bwMonBackgroundMain.main(bwMonBackgroundMain.java:7)
Exception in thread "main" java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(Unknown Source)
at bwMonBackground.<init>(bwMonBackground.java:20)
at bwMonBackgroundMain.main(bwMonBackgroundMain.java:7)
基本上,错误是说找不到文件(您正在指定对ImageIcon
构造函数的null
引用)。确保它存在于应用程序执行上下文的根位置。
现在,你的实际问题。
您将要建立一个自定义Component
(如JPanel
)和覆盖paintComponent
方法
在
你可以看看也想看看
我敢打赌,你有IOException,你只是做没有什么可以捕捉,这就是为什么图像为空。带图标的JLabel并不是真正的背景图像,它的图标和你不能在其中放置元素。所以你需要阅读: java swing background image
它包含代码示例很好的答案,只需将URL更改为有效的图像并启动。
你可以显示bwMonBackgroundMain.java的来源吗?现在看起来它找不到你想要添加到标签的图像文件
IOException被抛出,你不能看到是否因为堆栈跟踪被注释掉。我假设在尝试读取文件时抛出IO异常。尝试打印堆栈跟踪,然后从那里解决。
唯一的例外是因为有些东西扔一个IOException,你甚至没有打印堆栈跟踪。所以当你创建你的标签时'image'仍然是空的。首先查看导致IOException的原因。 – Thomas 2012-08-07 19:56:30
东西告诉我它是FileNotFoundException。 – evg 2012-08-07 20:03:51