//设计个性化的窗体   //为什么我改变了窗口界面就无法显示了,各位大虾这个问题出在哪!import java.awt.*;
import javax.swing.*;
import java.awt.event.*;public class MainWindow extends JFrame
{
public MainWindow(String title)
{
super(title);
//使用Swing时可以设置窗口外观风格,可以根据需要选择以下风格中的一种
//String windows = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
String metal = "javax.swing.plaf.metal.MetalLookAndFeel";
//String motif = "com.sun.java.swing.plaf.motif.MotifLookAndFeel";
try
{
UIManager.setLookAndFeel(metal); 
SwingUtilities.updateComponentTreeUI(this);  
pack();  
}
catch (Exception e)
{
System.out.println("不能设置这个界面风格: " + e); 

setIconImage((new ImageIcon("012.gif")).getImage());  
setSize(400,300);
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();  
Dimension my = getSize();
setLocation((screen.width-my.width)/2,(screen.height-my.height)/2);
setVisible(true);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
public static void main(String[] args)
{
new MainWindow("学生管理系统主窗口");
}
}

解决方案 »

  1.   

    很正常,我运行很好。
    UIManager.setLookAndFeel(metal); 这句中的metal在上面更换风格时也要做相应的改变就行了
    自己再试下!!!
      

  2.   

    你需要有这3个风格的lib,
    但是运行没有error,说明lib是存在的。我建议:
    1,不要用pack();  ,这个没有什么好处。尽量自己去控制UI的大小。
    2,你用了updateComponentTreeUI,既然用到了Update,我建议还是在update之后,加一个this.updateUI(),或者是repaint(),
       这样,UI才会重新画出来!
    你可以试试看!
      

  3.   

    无论你在哪儿编译执行,都必须有这3个风格的lib,也就是说,要让程序找得到这3个lib