0
以前,我是使用下面的語句,用於設置幀使用JLabel設置幀的背景圖像的正確方法是什麼?
JLabel backImage = new JLabel(new ImageIcon("C\\users\\BSK\\Desktop\\win.png"));
的背景和它工作正常和產生以下結果。(編碼按鈕未示出)
但是,當我創建了一個名爲Resource
新包裝,並把該圖像,並使用下面的語句
JLabel backImage=new JLabel();
ImageIcon img;
img = new ImageIcon(getClass().getResource("/Resource/win.png"));
backImage.setIcon(img);
我得到以下結果: -
正如你可以看到我的拼圖方塊熄滅scope.So的就是這兩種方法之間的區別?
EDIT佈局的JLabel backImage
使用是邊界Layout.i我首先設定的JFrame作爲JLabel的是backImage
的內容窗格,並且在GridBagLayout的一個單獨的潘內爾添加的按鈕,然後加入潘內爾到contentPane該框架再次是JLabel backImage
。
可以是相對路徑問題,試試:'img = new ImageIcon(getClass()。getResource(「Resource/win.png」));' – Pphoenix
標籤是如何添加到框架的?什麼佈局經理正在使用?考慮提供一個[可運行的示例](https://stackoverflow.com/help/mcve),它可以證明你的問題,這將減少猜測工作併產生更好的響應 – MadProgrammer
@Pphoenix圖像在那裏,它只是在右邊:P – MadProgrammer