質問

JTabbedPane オブジェクトで setSelectedComponent または setSelectedIndex を使用すると、パネルが常にUIに表示されます。ただし、パネルに関連付けられたタブが非表示のままになる場合があります。つまり、タブはタブ付きペインの表示部分までスクロールしません。

これを修正するにはどうすればよいですか?私は安っぽい1つのインデックスを選択してから、目的のインデックスを選択し、さらにいくつかのよりエレガントなものを試しましたが、arrrrrgh !!

できれば助けてください。

ありがとう、 トッド

役に立ちましたか?

解決

あなたの電話はEDTで行われていないと思います。 SwingUtilities.invokeLater

でラップします

他のヒント

これは、スイングコンポーネントまたはそのモデルを変更するメソッドがあり、EDTで呼び出す必要があるが、バックグラウンドスレッドから呼び出すことができる場合に使用できるパターンです。これにより、EDMで func always が実行されます。

void func(final Type1 arg1, final Type2 arg2) {

    if (!SwingUtilities.isEventDispatchThread()) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                func(arg1, arg2);
            }
        });
        return;
    }
    // method code goes here
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top