0

タイトルが示すように、タブの高さが期待どおりに増加しません。コードは次のようになります。

    JTabbedPane jtp = new JTabbedPane();
    JLabel iconInTab = new JLabel(new ImageIcon("myImage.png"));
    iconInTab.setPreferredSize(new Dimension(100,80)); // is the size of my Image, I've also try to do this using getSize
    jtp.addTab(null,new JPanel());
    jtp.setTabComponentAt(0,iconInTab);

私もhtmlを使ってこれを試しましたが、どちらもうまくいきませんでした:

    jtp.addTab("<html><p><p><p></html>",new ImageIcon("myImage.png"),new JPanel());

最初のコードでは、問題は水平方向のサイズの変更ではなく (幅が正しく変更されます)、問題は高さのみです。2 番目のコードでは、html コード内に複数の行を追加すると、テキストが不完全に表示されます (ちょうど中央の行を表示します)(幅も期待どおりに動作します。問題は高さです)。. .

なぜこうなった?またはどうすればこれを行うことができますか?

注: SO: Mac OS X 10.8.1

4

1 に答える 1

0

解決しました!!! 問題は、MAC OS X (com.apple.laf.AquaTabbedPaneContrastUI) を介したデフォルトの UI であり、basicTabbedPaneUI (または好みのもの) に変更するだけで済みます。私の特定のケースでは、このクラスを拡張する必要があります ( *は面倒でした。なぜなら、私が望んでいたのは本当に複雑だったからです)。

     myTabbedPane.setUI(new BasicTabbedPaneUI());

注: TabbedPane のデフォルト UI を確認すると、さまざまな問題が解決する場合があります。

于 2012-09-06T13:51:49.677 に答える