До сих пор я пытался использовать метод PaintTabBackground() (используя тот же код как я использовал в методе PaintTab()), но я не верю, что это метод для достижения того, что я ищу, я просмотрел документацию Java и не вижу никаких индикаторов, как любым другим методам, которые мне следует использовать.
Текущий (соответствующий) код для myTabbedPaneUI (моя реализация BasicTabbedPaneUI выглядит следующим образом:
Код: Выделить всё
private static class myTabbedPaneUI extends BasicTabbedPaneUI {
@Override
protected void paintTab(Graphics g, int tabPlacement, Rectangle[] rects, int tabIndex, Rectangle iconRect, Rectangle textRect) {
Graphics2D g2d = (Graphics2D)g;
g2d.setColor(Color.PINK);
g2d.fillRoundRect(rects[tabIndex].x, rects[tabIndex].y, rects[tabIndex].width, rects[tabIndex].height+20, 6, 6);
g2d.setColor(Color.BLUE);
g2d.drawRoundRect(rects[tabIndex].x, rects[tabIndex].y, rects[tabIndex].width, rects[tabIndex].height+20, 6, 6);
g2d.setColor(Color.BLACK);
g2d.drawString("Test String", 0, 0);
}
Код: Выделить всё
@Override
protected void paintTab(Graphics g, int tabPlacement, Rectangle[] rects, int tabIndex, Rectangle iconRect, Rectangle textRect) {
Graphics2D g2d = (Graphics2D)g;
if (tabIndex == selectedTabIndex){
drawSelected();
} else {
drawUnselected();
}
g2d.drawString(tabText, 0, 0);
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... from-the-b