2016-09-24 79 views
0

好吧,我已經使用此代碼將圖像添加到標籤。添加JLabel作爲JPanel的背景

JLabel image = new JLabel(); 
image.setIcon(new ImageIcon("path here")); 
//image.setLayout(new BorderLayout()); 

,並添加了標籤面板,我已經有

JPanel jp1=new JPanel(new FlowLayout()); 
jp1.add(image); 

注意,JP1也有很多其他的按鈕。所以我只需要最簡單的方法來將標籤「image」添加爲JPanel「jp1」的背景,因爲通過該代碼,面板(jp1)將圖像和按鈕設置爲彼此相鄰(根據流佈局) ,但我希望標籤是一個背景。我嘗試了setBackground,但它只需要一個顏色。我怎樣才能做到這一點?

+0

使用標籤顯示BG圖像有缺點。更好的是像Rob Camick的[背景面板](https://tips4java.wordpress.com/2008/10/12/background-panel/)中那樣自定義繪製圖像,也可以參閱其中關於使用標準標籤的缺陷的討論。 –

+0

退出發佈重複的問題!你在最後一個問題中得到了答案。例如注意上面的註釋和另一個問題中的鏈接如何引用'BackgroundPanel'?另外,你已經給出了多個簡單的圖像繪製例子。現在你又有3個有效的鏈接。沒有理由不能解決你的問題。 – camickr

回答

2

嘗試任何這些:

如果標籤僅用於圖像,那麼你可以完全避免使用它。

+0

該標籤僅用於圖像,是的。我可以直接添加圖像作爲面板的背景嗎?我已經閱讀過這三個鏈接,它們有點混亂,並且弄亂了我的代碼。 – Ahmed

+0

(1+)@Ahmed,「他們有點混亂並且弄亂了我的代碼」 - 問題出在你的代碼上,而不是鏈接中提供的代碼。這些鏈接提供瞭解決這個問題的常見解決方案的例子。所以你需要調試你的代碼,看看你在做什麼不同。因此請下載鏈接中找到的工作代碼示例並研究代碼。如果你有關於代碼的問題,那麼問一下,但我們確定無法猜測你的問題是什麼,因爲這些代碼非常簡單。 – camickr