2011-01-05 9 views
1

Javaに新しいと問題がある私は何をしていても修正できないようですので、 ヘルプは大歓迎です。Nimbus設定後にGUIを戻す

私はJavaで少しのアプリケーションを持っており、Nimbusのルックアンドフィールを使用するポップアップカレンダー(WWW) が利用可能です。私の問題は、初めて のポップアップカレンダーが呼び出された後、私のGUIのための同じルックアンドフィールを得ることができないことです。私には2つの選択肢があります。設定をリセットする方法を見つけるために、 私のGUIは以前と同じで、ポップアップの呼び出しが行われているか、または でないコードを入力して、すべてのGUIがnimbusのルックアンドフィールを使用するようにします。ここで

がポップアップカレンダー

import java.awt.*; 
import javax.swing.*; 
import javax.swing.UIManager.*; 

public class Celendar extends JFrame { 
    //private JPanel p; 
    Celendar(){ 
    //super("ColorEditor"); 
     //UIManager.put("nimbusBase", new Color(233,22,22)); 
     //UIManager.put("nimbusBlueGrey", new Color(22,200,150)); 
     //UIManager.put("control", new Color(100,150,200)); 


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

    setLayout(new GridLayout(1,1)); 
    setSize(322,250); 
    setLocation(500,400); 
    setResizable(false); 
    Days d= new Days(); 

    /*----- Here -----*/ 
    //setVisible(true); 
    //setDefaultCloseOperation(EXIT_ON_CLOSE); 
    setDefaultCloseOperation(DISPOSE_ON_CLOSE); 

    I THINK HERE IS WHERE I NEED TO INSERT SOME CODE TO GET MY GUI DISPLAYING 
    BEFORE THECALL TO THE POP UP IS MADE. 


    /*----------------*/ 
    add(d); 

    // try{ 
    // //UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 
    // //UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); 
    //  UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); 
    // //UIManager.setLookAndFeel("com.sun.java.swing.plaf.gtk.GTKLookAndFeel"); 
    // //UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel"); 
    // //UIManager.setLookAndFeel("com.sun.javax.swing.plaf.metal.MetalLookAndFeel"); 
    // SwingUtilities.updateComponentTreeUI(this); 
    // }catch(Exception e){System.out.println("error "+e);} 
    } 
} 

Orのコードで私はすべての私のGUIを作るためにコードを挿入します光背のを見て、あなたはすべてのUIは同じにしたい場合は

+0

Javaの初心者ですか?私はあなたに非常に、非常に幸運を祈っています。少なくとも楽しみを見てみましょう。 :)ああ、4つのスペースでコードをインデントしてください。フォーマットルールを参照してください。ようこそ! :D –

答えて

0

を感じますL & F、UIまたはコンポーネントが作成される前にそれを設定するコードを記述します。通常はmain(String[])にあるか、作成された最初のUIのコンストラクタにあります。また、UIManager.getSystemLookAndFeelClassName()を呼び出して、カレンダーを終了した後にL & Fを戻すこともできます。 L & Fを設定すると、それ以降に作成されるすべてのコンポーネントは、L & F(それがわからない場合)になります。

+0

こんにちはMerkyさん、ありがとうございました。私のメインはどこにありますか?ありがとうございました。 ; Dimension sd = Toolkit.getDefaultToolkit()。getScreenSize(); md.setLocation(sd.width/2-400/2、sd.height/2-400/2); md.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }ありがとうSimon –

+0

Sory Merky false alarmは全く機能しません。どのようにJava GUIの外観に戻ってUIManager.getSystemLookAndFeelClassNameを使ってください。 –

+0

ソート済み - すべての返信をありがとう。 Simon –

関連する問題