import javax.swing.*;
import java.awt.*;
public class mainFrame extends JFrame
{
public mainFrame(String sTitle,int iWidth,int iHeight)
{
Dimension dim=Toolkit.getDefaultToolkit().getScreenSize();
ImageIcon ii=new ImageIcon("./images/middle.gif");
setTitle(sTitle);
setIconImage(ii.getImages());
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setSize(iWidth,iHeight);
int w=getSize.width();
int h=getSize.height();
System.out.println("窗口宽:"+w+"窗口高:"+h);
int x=(dim.width-w)/2;
int y=(dim.height-h)/2;
setLocation(x,y);
setVisible(true);
}
public static void main(String args[])
{
JFrame.setDefaultLookAndFeelDecorated(true);
mainFrame mF=new mainFrame("main Frame demo",400,300);
}
}
这个程序 我编译后 提示 10 13 14 行找不到符号?为什么呢,是import的问题?或classpath? 

解决方案 »

  1.   


    import   javax.swing.*;
    import   java.awt.*; 
    public class MainFrame extends JFrame{
    public   MainFrame(String   sTitle,int   iWidth,int   iHeight)
    {
    Dimension   dim=Toolkit.getDefaultToolkit().getScreenSize();
    ImageIcon   ii=new   ImageIcon( "./images/middle.gif ");
    setTitle(sTitle);
    setIconImage(ii.getImage());
    setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    setSize(iWidth,iHeight);
    int   w=getWidth();
    int   h=getHeight();
    System.out.println( "窗口宽: "+w+"    "  + "窗口高: "+h);
    int   x=(dim.width-w)/2;
    int   y=(dim.height-h)/2;
    setLocation(x,y);
    setVisible(true);
    }  /**
     * @param args
     */
    public static void main(String[] args) {
    JFrame.setDefaultLookAndFeelDecorated(true);
    MainFrame   mF=new   MainFrame( "main   Frame   demo ",400,300);
    // TODO 自动生成方法存根 }}
    //这样应该对了哦,你试试看吧。
      

  2.   

    int   w=getSize().width; 
    int   h=getSize().height; 
      

  3.   

    刚才帖漏了一行setIconImage(ii.getImage()); 
      

  4.   

    两处错误:一:
       根本就没有getImages()这个方法
        把getImages()后面的s去掉
        改成getImage()二:
       把   int   w=getSize.width(); 
           int   h=getSize.height(); 
       这两句改成:
             
            int  w=getSize().width;   
           int  h=getSize().height;   
     
    这样就不会报错了