2012-08-07 93 views
0

好的,我想說的第一件事是:我知道在java中設置背景圖像有許多類似的問題。但是,自從我拿到一個由其他人啓動的Java項目後,我的情況有點不同。我相信以前的程序員對於Java GUI編程來說是相當新的,而我自己也是新的Java GUI編程的非常。下面是該程序將不得不做:在Java中設置背景圖像

  • 設置背景圖片是我們的客戶的網絡地圖
  • 將帶寬映射到相應的客戶端是通過一個URL獲得
  • 刷新帶寬圖每5秒左右

,以前的程序員也成立了2班,唯一一個是主要的和一個設立,他有一個猴子從URL背景圖像

現在,我決定使用MigLayout來組織一個網格,我將把帶寬圖像放在正確的位置。我遇到了麻煩,所以我決定開始縮小一點,並將猴子背景更改爲網絡地圖。我將地圖jpg添加到了src庫中,並認爲如果將URL切換到File,它會起作用。它並沒有和我一直試圖改變事情,讓它工作,但沒有雪茄。

下面是設置背景的代碼。這是我第一次嘗試發佈代碼,我希望它的作品:...以及我嘗試了幾次幾次,並搜索了幾次,但張貼我的代碼沒有工作,所以我拍了一個屏幕截圖。今天什麼都沒有爲我工作。 enter image description here

我得到的錯誤是:

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) 
+0

唯一的例外是因爲有些東西扔一個IOException,你甚至沒有打印堆棧跟蹤。所以當你創建你的標籤時'image'仍然是空的。首先查看導致IOException的原因。 – Thomas 2012-08-07 19:56:30

+1

東西告訴我它是FileNotFoundException。 – evg 2012-08-07 20:03:51

回答

1

我敢打賭,你有IOException,你只是做沒有什麼可以捕捉,這就是爲什麼圖像爲空。帶圖標的JLabel並不是真正的背景圖像,它的圖標和你不能在其中放置元素。所以你需要閱讀: java swing background image

它包含代碼示例很好的答案,只需將URL更改爲有效的圖像並啓動。

0

你可以顯示bwMonBackgroundMain.java的來源嗎?現在看起來它找不到你想要添加到標籤的圖像文件

0

IOException被拋出,你不能看到是否因爲堆棧跟蹤被註釋掉。我假設在嘗試讀取文件時拋出IO異常。嘗試打印堆棧跟蹤,然後從那裏解決。