Swing/TabTitleTextPosition の変更点
- 追加された行はこの色です。
- 削除された行はこの色です。
- Swing/TabTitleTextPosition へ行く。
- Swing/TabTitleTextPosition の差分を削除
--- category: swing folder: TabTitleTextPosition title: JTabbedPaneのタブアイコンとタイトルの位置 tags: [JTabbedPane, Icon, JLabel] author: aterai pubdate: 2009-11-30T13:18:03+09:00 description: JTabbedPaneのタブ中に配置するタイトルとアイコンの位置を変更します。 image: https://lh4.googleusercontent.com/_9Z4BYR88imo/TQTU96IMXGI/AAAAAAAAAm4/LydkDv26XY8/s800/TabTitleTextPosition.png --- * 概要 [#summary] `JTabbedPane`のタブ中に配置するタイトルとアイコンの位置を変更します。 #download(https://lh4.googleusercontent.com/_9Z4BYR88imo/TQTU96IMXGI/AAAAAAAAAm4/LydkDv26XY8/s800/TabTitleTextPosition.png) * サンプルコード [#sourcecode] #code(link){{ tabbedPane.addTab(title, c); JLabel label = new JLabel(title, icon, SwingConstants.CENTER); // label.setVerticalAlignment(SwingConstants.CENTER); label.setVerticalTextPosition(SwingConstants.BOTTOM); // label.setHorizontalAlignment(SwingConstants.CENTER); label.setHorizontalTextPosition(SwingConstants.CENTER); // Dimension dim = label.getPreferredSize(); // label.setPreferredSize(new Dimension(60, dim.height)); tabbedPane.setTabComponentAt(tabbedPane.getTabCount() - 1, label); }} * 解説 [#explanation] 上記のサンプルでは、タブにアイコンとラベルの位置を変更した`JLabel`を配置しています。 - `JDK 1.6`以前の場合はタブにコンポーネントを直接配置する方法がないので、以下のような`html`タグを使用する必要がある - `JDK 1.6`以前の場合はタブにコンポーネントを直接配置する方法がないので以下のような`html`タグを使用する必要がある #code{{ JTabbedPane tabs = new JTabbedPane(); tabs.addTab(makeTitle("Title","a32x32.png"), new JLabel("a")); tabs.addTab(makeTitle("Help", "b32x32.png"), new JLabel("b")); // ... private String makeTitle(String t, String p) { return "<html><center><img src='" + getClass().getResource(p) + "'/><br/>" + t; } }} * 参考リンク [#reference] - [https://xp-style-icons.en.softonic.com/ XP Style Icons - Download] - [[JLabelのアイコンと文字列の位置>Swing/TextPositionAndAlignment]] - [[JTabbedPaneのタイトルをクリップ>Swing/ClippedTabLabel]] * コメント [#comment] #comment #comment