Swing/SelectedTabHeight のバックアップ(No.1)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/SelectedTabHeight へ行く。
- 1 (2010-04-08 (木) 15:08:55)
- 2 (2013-01-02 (水) 14:12:51)
- 3 (2013-08-07 (水) 13:26:25)
- 4 (2014-12-02 (火) 01:47:30)
- 5 (2016-02-19 (金) 14:56:59)
- 6 (2017-07-14 (金) 15:05:37)
- 7 (2018-02-24 (土) 19:51:30)
- 8 (2018-05-31 (木) 14:41:58)
- 9 (2019-05-22 (水) 19:35:38)
- 10 (2019-06-07 (金) 15:20:16)
- 11 (2021-02-20 (土) 09:53:47)
TITLE:JTabbedPaneで選択したタブの高さを変更
Posted by terai at 2010-04-05
JTabbedPaneで選択したタブの高さを変更
JTabbedPaneで選択したタブの高さを変更します。
- &jnlp;
- &jar;
- &zip;
#screenshot
サンプルコード
tabbedPane.setUI(new com.sun.java.swing.plaf.windows.WindowsTabbedPaneUI() {
@Override protected int calculateTabHeight(int tabPlacement, int tabIndex, int fontHeight) {
return 32;
}
@Override protected void paintTab(Graphics g, int tabPlacement, Rectangle[] rects,
int tabIndex, Rectangle iconRect, Rectangle textRect) {
Rectangle tabRect = rects[tabIndex];
int selectedIndex = tabPane.getSelectedIndex();
boolean isSelected = selectedIndex == tabIndex;
if(!isSelected) {
//JTabbedPane.TOP, JTabbedPane.SCROLL_TAB_LAYOUT
rects[tabIndex].y = 16;
rects[tabIndex].height = 16;
}
super.paintTab(g,tabPlacement,rects,tabIndex,iconRect,textRect);
}
});
解説
上記のサンプルでは、選択されていないタブの高さを低くすることで、選択されたタブの高さが目立つように設定しています。
- 対応しているのは、JTabbedPane.TOP, JTabbedPane.SCROLL_TAB_LAYOUT の場合のみ