こんにちは私はニンバスのルックアンドフィールを使用していて、アイコンとテキストが付いたタブ付きペインを持っています。これで、アイコンがテキストの右側に表示されますが、左側に表示したいと思います。
また、アイコンとテキストの間にスペースを追加したいと思います。
ありがとう!
こんにちは私はニンバスのルックアンドフィールを使用していて、アイコンとテキストが付いたタブ付きペインを持っています。これで、アイコンがテキストの右側に表示されますが、左側に表示したいと思います。
また、アイコンとテキストの間にスペースを追加したいと思います。
ありがとう!
タブ コンポーネントを自分で設定する必要があります。タブ タイトルのレンダリング方法を制御します。
// Create tabbed pane and add tabs.
JTabbedPane tabbedPane = ...
// Create bespoke component for rendering the tab.
JLabel lbl = new JLabel("Hello, World");
Icon icon = new ImageIcon(getClass().getResource("/foo/bar/hello.jpg"));
lbl.setIcon(icon);
// Add some spacing between text and icon, and position text to the RHS.
lbl.setIconTextGap(5);
lbl.setHorizontalTextPosition(SwingConstants.RIGHT);
// Assign bespoke tab component for first tab.
tabbedPane.setTabComponentAt(0, lbl);
明らかに、これをユーティリティ メソッドにカプセル化できます。
private void addTab(JTabbedPane tabbedPane, Component tab, String title, Icon icon) {
tabbedPane.add(tab);
JLabel lbl = ... // Create bespoke label for rendering tab title.
tabbedPane.setTabComponentAt(tabbedPane.getTabCount() - 1, lbl);
}