1
我已经创建了一个GUI和我使用的seaglasslookandfeel和我的jar文件在我的构建路径,我得到一个异常的外观和感觉SEAGLASS的外观和感觉异常
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.UIManager;
public class Main {
private JFrame frame;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
UIManager.setLookAndFeel("com.seaglasslookandfeel.SeaGlassLookAndFeel");
Main window = new Main();
window.frame.setLocationRelativeTo(null);
window.frame.pack();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public Main() {
initialize();
}
private void initialize() {
frame = new JFrame();
frame.setBounds(100, 100, 450, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Panel p=new Panel();
frame.add(p);
}
}
Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError
at sun.reflect.GeneratedConstructorAccessor1.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at com.seaglasslookandfeel.SeaGlassContext.getContext(SeaGlassContext.java:145)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.getContext(SeaGlassPanelUI.java:154)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.updateStyle(SeaGlassPanelUI.java:128)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.propertyChange(SeaGlassPanelUI.java:217)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.awt.Component.firePropertyChange(Unknown Source)
at java.awt.Component.setBackground(Unknown Source)
at javax.swing.JComponent.setBackground(Unknown Source)
at javax.swing.plaf.synth.SynthStyle.installDefaults(Unknown Source)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:123)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:113)
at com.seaglasslookandfeel.SeaGlassLookAndFeel.updateStyle(SeaGlassLookAndFeel.java:2286)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.updateStyle(SeaGlassPanelUI.java:130)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.propertyChange(SeaGlassPanelUI.java:217)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.awt.Component.firePropertyChange(Unknown Source)
at java.awt.Component.setBackground(Unknown Source)
at javax.swing.JComponent.setBackground(Unknown Source)
at javax.swing.plaf.synth.SynthStyle.installDefaults(Unknown Source)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:123)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:113)
at com.seaglasslookandfeel.SeaGlassLookAndFeel.updateStyle(SeaGlassLookAndFeel.java:2286)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.updateStyle(SeaGlassPanelUI.java:130)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.propertyChange(SeaGlassPanelUI.java:217)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.awt.Component.firePropertyChange(Unknown Source)
at java.awt.Component.setBackground(Unknown Source)
at javax.swing.JComponent.setBackground(Unknown Source)
at javax.swing.plaf.synth.SynthStyle.installDefaults(Unknown Source)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:123)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:113)
at com.seaglasslookandfeel.SeaGlassLookAndFeel.updateStyle(SeaGlassLookAndFeel.java:2286)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.updateStyle(SeaGlassPanelUI.java:130)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.propertyChange(SeaGlassPanelUI.java:217)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.awt.Component.firePropertyChange(Unknown Source)
at java.awt.Component.setBackground(Unknown Source)
at javax.swing.JComponent.setBackground(Unknown Source)
at javax.swing.plaf.synth.SynthStyle.installDefaults(Unknown Source)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:123)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:113)
at com.seaglasslookandfeel.SeaGlassLookAndFeel.updateStyle(SeaGlassLookAndFeel.java:2286)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.updateStyle(SeaGlassPanelUI.java:130)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.propertyChange(SeaGlassPanelUI.java:217)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.awt.Component.firePropertyChange(Unknown Source)
at java.awt.Component.setBackground(Unknown Source)
at javax.swing.JComponent.setBackground(Unknown Source)
at javax.swing.plaf.synth.SynthStyle.installDefaults(Unknown Source)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:123)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:113)
at com.seaglasslookandfeel.SeaGlassLookAndFeel.updateStyle(SeaGlassLookAndFeel.java:2286)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.updateStyle(SeaGlassPanelUI.java:130)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.propertyChange(SeaGlassPanelUI.java:217)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.awt.Component.firePropertyChange(Unknown Source)
at java.awt.Component.setBackground(Unknown Source)
at javax.swing.JComponent.setBackground(Unknown Source)
at javax.swing.plaf.synth.SynthStyle.installDefaults(Unknown Source)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:123)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:113)
at com.seaglasslookandfeel.SeaGlassLookAndFeel.updateStyle(SeaGlassLookAndFeel.java:2286)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.updateStyle(SeaGlassPanelUI.java:130)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.propertyChange(SeaGlassPanelUI.java:217)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.awt.Component.firePropertyChange(Unknown Source)
at java.awt.Component.setBackground(Unknown Source)
at javax.swing.JComponent.setBackground(Unknown Source)
at javax.swing.plaf.synth.SynthStyle.installDefaults(Unknown Source)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:123)
at com.seaglasslookandfeel.SeaGlassStyleWrapper.installDefaults(SeaGlassStyleWrapper.java:113)
at com.seaglasslookandfeel.SeaGlassLookAndFeel.updateStyle(SeaGlassLookAndFeel.java:2286)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.updateStyle(SeaGlassPanelUI.java:130)
at com.seaglasslookandfeel.ui.SeaGlassPanelUI.propertyChange(SeaGlassPanelUI.java:217)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.awt.Component.firePropertyChange(Unknown Source)
at java.awt.Component.setBackground(Unknown Source)
at javax.swing.JComponent.setBackground(Unknown Source)
at javax.swing.plaf.synth.SynthStyle.installDefaults(Unknown Source)
不要混合重和轻的组件,比如在'JFrame'上添加'Panel'。这篇文章(http://java.sun.com/products/jfc/tsc/articles/mixing/)将提供更多信息。 – Alpine 2011-05-15 13:39:44
也很高兴实际问一些问题。买我想你的情况,这就是为什么我得到这个例外,对吧? @Alpine(+1)现货很好,我喜欢这篇文章,我总是推荐在这种情况下使用相同的文章:) – Boro 2011-05-15 13:49:35