2012-05-04 94 views
0

我有我的標籤問題:圖標不顯示

JTabbedPane tab = new JTabbedPane(); 
    frame.add(tab, BorderLayout.CENTER); 

    JPanel contact = new JPanel(); 
    contact.add(backgroundContact); 
    tab.add("Contacto", contact); 
    //tab.addTab("Contacto",new ImageIcon("images/image2.gif"), contact,""); 

    JPanel schedule = new JPanel(); 
    schedule.add(backgroundSchedule); 
    tab.add("Horario", schedule); 
    //tab.addTab("Horario", new ImageIcon("images/image2.gif"), schedule,""); 

    JPanel cost = new JPanel(); 
    cost.add(backgroundCost); 
    tab.add("Tarifas", cost); 
    //tab.addTab("Tarifas", new ImageIcon("images/image3.gif"), cost,""); 


     // Los iconos 
    tab.setIconAt(0, new ImageIcon("images/image1.gif")); 
    tab.setIconAt(1, new ImageIcon("images/image2.gif")); 
    tab.setIconAt(2, new ImageIcon("images/image3.gif")); 

我已經試過這兩個選項,但是它們的圖標不顯示。爲什麼會發生?

我也試過:new ImageIcon("images/im.gif")不存在,我還沒有任何錯誤

回答

6

試試這個:

URL urlToImage3 = this.getClass().getResource("/" + "images/image3.gif"); 
... new ImageIcon(urlToImage3); 

您可能會連接"/" + "images/image3.gif" - 我只是想強調的領先/,因爲它從類路徑的根目錄搜索更健壯。

如果這些圖像是我懷疑的'嵌入式資源',它們在運行時將不會被File使用,但應位於應用程序的其中一個Jars中的類路徑中,因此可用通過URL

+0

非常感謝!有效!! – user1256477