5

複数のタブを含む jTabbedPane があります。選択した/アクティブなタブのタイトル テキストを太字にしようとしています。これを行う簡単な方法はありますか?

4

3 に答える 3

0
JTabbedPane pane = new JTabbedPane();
pane.addChangeListener(new ChangeListener(){

 @Override
 public void stateChanged(ChangeEvent e) {
     JTabbedPane source = (JTabbedPane) e.getSource();
     // Set all tabs to PLAIN font
     for(int i = 0; i < source.getTabCount(); i++) {
         Component c = source.getTabComponentAt(i);
         c.setFont(c.getFont().deriveFont(Font.PLAIN));
     }
     Component selectedComp = source.getTabComponentAt(source.getSelectedIndex());
     // Set selected component to BOLD
     selectedComp.setFont(selectedComp.getFont().deriveFont(Font.BOLD));
     }
});

これを試してみてください。私はすぐに書きました。最初のタブを調整する必要があるかもしれません。よくわかりません。

また、最初のバージョンが正しいと思いますが、 JTabbedPane.getTabComponentAt(int idx) または JTabbedPane.getComponentAt(int idx) が必要かどうかもわかりません。

于 2013-08-21T17:04:33.660 に答える