2

NetBeans プラットフォーム フレームワークで構築したアプリケーションの LookAndFeel を変更する方法がわかりません。誰か助けてください。TinyLAF Java API http://www.muntjak.de/hans/java/tinylaf/index.htmlを使用して外観を変更したい。NetBeans IDE で通常の Swing アプリケーションを開発するときに LookAndFeel を変更する方法は知っていますが、NetBeans プラットフォーム フレームワークで開発するときはわかりません。

これは、通常の Swing アプリケーションで使用する TinyLAF のコードです。

Toolkit.getDefaultToolkit().setDynamicLayout(true);
System.setProperty("sun.awt.noerasebackground", "true");
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);

try {
    UIManager.setLookAndFeel("de.muntjak.tinylookandfeel.TinyLookAndFeel");
} catch(Exception ex) {
    ex.printStackTrace();
}

TinyLaF は、'Default.theme' (大文字と小文字を区別) という名前の既定のテーマ ファイルを探します。見つかった場合、このファイルは起動時にロードされます。(「Default.theme」ファイルは通常の TinyLaF .theme ファイルです。特別な名前が付いているだけです。任意の .theme ファイルを取得して「Default.theme」に名前を変更できます)。

TinyLaF は次の URL を検索します。

  1. TinyLookAndFeel.class.getResource("/Default.theme");
    • tinylaf.jar内にある場合、「Default.theme」を見つけます
  2. Thread.currentThread().getContextClassLoader().getResource("Default.theme");
    • アプリケーションの JAR 内にある場合は「Default.theme」を検索します
  3. new File(System.getProperty("user.home"), "Default.theme").toURI().toURL();
    • ホームディレクトリ内にある場合は「Default.theme」を見つけます
  4. new File(System.getProperty("user.dir"), "Default.theme").toURI().toURL();
    • 作業ディレクトリ内にある場合は「Default.theme」を見つけます

私の質問は、NetBeans IDE の LookAndFeel を変更する方法ではなく、NetBeans プラットフォーム フレームワーク上に構築された Java アプリケーションに対してそれを行う方法であることに注意してください。

4

3 に答える 3

2

ネットを検索すると、次のことがわかりました。モジュール「インストーラー」で実行する必要があります。追加する必要がある場所については、このリンクを確認してください: http://joshiegeek.blogspot.co.il/2012/01/netbeans-platform-custom-laf.html

これには実際のコードサンプルがあります (タイトルは無視してください :)): http://forums.netbeans.org/topic39450.html

そして最後に、これは特定のプラフについて語っていますが、途中でコメントはほとんどありません: https://blogs.oracle.com/geertjan/entry/blue_look_and_feel_for

于 2012-07-24T18:45:26.943 に答える
1

1. MVC アーキテクチャに基づいているため、Swing のルック アンド フィールを非常に簡単に変更できます。

2. Swing はPLAF (Pluggable Look And Feel)としても知られているため、同じ Model パーツを保持して View を変更します。たとえば、デスクトップと Web アプリケーションの同じモデルのようにします。

3.使用

UIManager.setLookAndFeel(Your_Choice_of_Look_and_Feel);  // To set the Look and Feel
SwingUtilities.updateComponentTreeUI(frame);        // To refresh the JFrame and Components

詳細については、これを参照してください。

http://docs.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

于 2012-07-24T18:31:18.747 に答える