现在想使用substance可是总是有异常!!!Exception in thread "main" java.lang.IllegalStateException: This method must be called on the Event Dispatch Thread
at org.jvnet.substance.SubstanceLookAndFeel.setSkin(SubstanceLookAndFeel.java:1954)
at org.jvnet.substance.SubstanceLookAndFeel.initialize(SubstanceLookAndFeel.java:1601)
at javax.swing.UIManager.setLookAndFeel(Unknown Source)
at javax.swing.UIManager.setLookAndFeel(Unknown Source)
at test.NewJFrame.main(NewJFrame.java:53)

解决方案 »

  1.   

    这有个例子。Good luck~https://substance.dev.java.net/docs/getting-started.html
      

  2.   

    https://substance.dev.java.net/docs/getting-started.html  有问题的看下面的https://substance.dev.java.net/servlets/ProjectForumMessageView?messageID=31712&forumID=1484
      

  3.   

    参考下面的:
    修改你的main方法
    public static void main(String args[]) {
      java.awt.EventQueue.invokeLater(new Runnable() {
       public void run() {
        try {
         UIManager.setLookAndFeel(new org.jvnet.substance.skin.SubstanceEmeraldDuskLookAndFeel());
        } catch (Exception e) {
        }
     //调用你的方法   
       }
      }); }http://plplum.blog.163.com/blog/static/310324002009822111833488/
      

  4.   

    必须放在SwingUtilities.invokeLater(new Runnable() {
    public void run() {
                            }里面才可以的。
      

  5.   

    楼上两层的方法都可行,我在工程中也用到了L&F,代码是放在
    java.awt.EventQueue.invokeLater(new Runnable() { 
      public void run() { 
                                                } 
    });
    里的,也是可行的。