2010-07-06 75 views
3

我希望點擊它的按鈕不會改變背景顏色,默認情況下顏色會變成淺藍色的灰色。Swing JButton不會改變背景顏色onclick

所以這是我的代碼

JButton b = new JButton(); 
b.setBackground(SystemColor.control); 

我想要的按鈕,點擊它永遠不會改變背景顏色時。

+2

沒有任何代碼,沒有人能夠幫助你。 – Ham 2010-07-06 13:07:39

回答

2

該按鈕的繪製取決於LAF。您可以執行以下操作之一:

  1. 定義您自己的UI委託並將其分配給按鈕。 缺點:複雜,打破LAF。
  2. 延伸JButton並實施paintComponent()缺點:您需要自己繪製按鈕的標籤。
  3. 通過調用setContentAreaFilled(false)完全刪除按鈕的背景畫,然後在不透明面板中添加所需背景顏色的按鈕。 優點:按鈕不變,LAF不壞。 缺點:您需要爲每個按鈕創建一個面板,並根據佈局精確調整它以適應按鈕,這可能非常困難。
1

您可以修改用於背景和前景的顏色。你怎麼做取決於你使用的外觀和感覺。

如果您使用的是Nimbus,有一系列顏色here,here是關於如何更改顏色的文章。而here是另一篇可以提供幫助的文章。