2
我試圖創建一個JTabbedPane選項卡,將有不同的顏色時選擇。例如,假設我有標籤A,B和C.如果沒有選擇標籤,那麼標籤顏色將是默認值。如果選擇標籤A,則標籤顏色將變爲紅色。如果選擇了選項卡B,則選項卡顏色將變爲綠色。如果選擇了選項卡C,則選項卡顏色將變爲黃色。我如何實現這種行爲?我能找到的最接近的方法是調用UIManager.put("TabbedPane.selected", Color.RED)
,但這會將所有選定選項卡的顏色設置爲紅色。如何爲JTabbedPane的不同選定選項卡設置不同的顏色?
這並不完全是我嘗試製作的行爲。使用您的方法,所有選項卡都以默認顏色開始。選中標籤後,標籤顏色將更改爲代碼中指定的顏色,但實際繪製的顏色是默認選定標籤顏色。傳遞到'setBackgroundAt()'的顏色直到選中新選項卡後纔會顯示。 – lalalainexd
@lalalainexd這只是一個例子。您可以根據需要更改stateChanged方法的代碼,例如,將背景顏色設置爲默認值(使用null)以選擇未選中的選項卡。 – ugo
@lalalainexd int index = pane.getSelectedIndex(); Color selectedColor = index == 0?Color.red:index == 1?Color.green:Color.yellow;對於(int i = 0; int
ugo