package Swing3;import java.awt.*;
import java.awt.event.*;
import javax.swing.*;public class JLayeredPane1 extends JFrame{

public JLayeredPane1(){

super("JLayeredPane");
Integer[] layerConstants={JLayeredPane.DEFAULT_LAYER,
JLayeredPane.PALETTE_LAYER,new Integer(101),
JLayeredPane.MODAL_LAYER,new Integer(201),
JLayeredPane.POPUP_LAYER,JLayeredPane.DRAG_LAYER};

Color[] colors={Color.red,Color.blue,
        Color.magenta,Color.cyan,
        Color.yellow,Color.green,
        Color.pink};
Point postion=new Point(10,10);
JLabel[] Label=new JLabel[7];
JLayeredPane layeredPane = getLayeredPane();
        
        for (int i=0 ; i<7; i++)
        {
            label[i] = createLabel("第 "+(i+1)+" 层",colors[i],position);    //
            position.x = position.x+20;                                                          //    这四行一直报错 ,不知道什么原因
            position.y = position.y+20;                                                          //
            layeredPane.add(label[i],layerConstants[i]);                             //
        }        setSize(new Dimension(280, 280));
        show();
        addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                    System.exit(0);
            }
        });
    }
    
    public JLabel createLabel(String content, 
                              Color color,
                              Point position)
   {
        JLabel label = new JLabel(content,JLabel.CENTER);
        label.setVerticalAlignment(JLabel.TOP);
        label.setBackground(color);
        label.setForeground(Color.black);
        label.setOpaque(true);
        label.setBounds(position.x, position.y, 100, 100);
        return label;
    }
    
    public static void main(String[] arg)
    {
        new JLayeredPane1();
    }
}

解决方案 »

  1.   

            for (int i=0 ; i<7; i++)
            {
             Label[i] = createLabel("第 "+(i+1)+" 层",colors[i],postion);    //
             postion.x = postion.x+20;                                                          //    这四行一直报错 ,不知道什么原因
             postion.y = postion.y+20;                                                          //
                layeredPane.add(Label[i],layerConstants[i]);                             //
            }
    变量名写错了,,,
      

  2.   

    很多错误哦~
    show()方法已经不用了 用setVisble(boolean)代替
    JLayeredPane1()构造方法中 Point postion=new Point(10,10); 与下文position 拼写都有错误啊,你是用IDE写的么?难道是文本编辑器下写的,很多都是拼写错误
      

  3.   

    package Swing3;import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;public class JLayeredPane1 extends JFrame{
        
    public JLayeredPane1(){
            
            super("JLayeredPane");
            Integer[] layerConstants={JLayeredPane.DEFAULT_LAYER,
                    JLayeredPane.PALETTE_LAYER,new Integer(101),
                    JLayeredPane.MODAL_LAYER,new Integer(201),    
                    JLayeredPane.POPUP_LAYER,JLayeredPane.DRAG_LAYER};
            
            Color[] colors={Color.red,Color.blue,
                            Color.magenta,Color.cyan,
                            Color.yellow,Color.green,
                            Color.pink};
            Point position=new Point(10,10);
            JLabel[] Label=new JLabel[7];
    JLayeredPane layeredPane = getLayeredPane();
            
            for (int i=0 ; i<7; i++)
            {
                Label[i] = createLabel("第 "+(i+1)+" 层",colors[i],position);    //
                position.x = position.x+20;                                                          //    这四行一直报错 ,不知道什么原因
                position.y = position.y+20;                                                          //
                layeredPane.add(Label[i],layerConstants[i]);                             //
            }        setSize(new Dimension(280, 280));
            //show();
            setVisible(true);
            addWindowListener(new WindowAdapter() {
                public void windowClosing(WindowEvent e) {
                        System.exit(0);
                }
            });
        }
        
        public JLabel createLabel(String content, 
                                  Color color,
                                  Point position)
       {
            JLabel label = new JLabel(content,JLabel.CENTER);
            label.setVerticalAlignment(JLabel.TOP);
            label.setBackground(color);
            label.setForeground(Color.black);
            label.setOpaque(true);
            label.setBounds(position.x, position.y, 100, 100);
            return label;
        }
        
        public static void main(String[] arg)
        {
            new JLayeredPane1();
        }
        }我帮你改好了,你试试
      

  4.   

    用IDE写的 不过不怎么用提示。
    搞定了