0

Java アプリケーションでルック アンド フィール ニンバスを設定しましたが、フレームごとにビューが常に異なる理由がわかりません。あるフレームでは完全に良好な青色のニンバスが得られ、別のフレームでは灰色のニンバスが得られましたが、それは適切ではありません。もう 1 つは Nimbus のルック アンド フィールを使用していると表示されませんでした。ここに私がメインで使用するコードがあります

try {
    for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
        if ("Nimbus".equals(info.getName())) {
            UIManager.setLookAndFeel(info.getClassName());
            break;
        }
    }
    } catch (Exception e) {
    // If Nimbus is not available, you can set the GUI to another look and feel.
}

輸入もしています

import javax.swing.*;
import javax.swing.UIManager.LookAndFeelInfo;

誰かが私を助けてくれることを願っています、ありがとう。

4

1 に答える 1

5

SwingUtilities#updateComponentTreeUIあるルック アンド フィールから別のルック アンド フィールに切り替えるときは、最上位のコンテナごとにメソッドを 1 回呼び出す必要があります。また、目に見える UI/トップレベル コンテナの一部ではない UI コンポーネントを保存する場合は、それらも更新する必要があります。

たとえば、ルック アンド フィールを切り替えたときに 2 番目のパネルが既に作成されている場合は、それも更新してください。

Swing のほとんどすべてのものと同様に、かなり優れたチュートリアルが利用可能です。

于 2012-04-06T21:36:09.067 に答える