B/S写久了尝试写写C/S报如下错误。请求解答:
代码:
              jf.getContentPane().add(jp3);
jf.getContentPane().add(jp1);
jf.getContentPane().add(jp2);
jf.getContentPane().add(jp4);
jf.getContentPane().add(jp5);
jf.getContentPane().add(jp6);
jf.getContentPane().add(jp2);
jp4.setLayout(fl);删除线部分为错误点。jf 为一个JFrame实例,jp为JPanel实例 fl为FlowLayout实例
错误内容如下:
          The method getContentPane() from the type JFrame refers to the missing type Container
期待解答

解决方案 »

  1.   

    没见过这种错误。有全部的代码吗?通常来说设置容器的Layout应该添加组件之前,这样才能保证组件的布局是正常的,如果在添加之后再设置Layout,那么布局就是以默认的布局添加的,你得主动重新布局一下,getContentPane().revalidate()
      

  2.   

    我只是写了new Jframe("Test").getContentPane().add();   就报错。错误点是在getContentpane().我也不知道为什么,估计是环境的问题。你能不能帮我分析下问题的原因?愁死了。
      

  3.   

    没有问题的。我朋友运行都没有问题。我在我的不同IDE(NetBeans、Eclipse3.3.2、Eclipse3.4.1)下面都尝试过了,他们把它们能调试的也发给我,效果依旧。
    很简单的代码如下:
                import javax.swing.JButton;
    import javax.swing.JFrame;/**
     * 
     *//**
     * @author Administrator
     *
     */
    public class testframe extends JFrame {
    public void test()
    {
    JButton jb = new JButton("你好");
    this.getContentPane().add(jb);
    this.setSize(200,200);
    this.setVisible(true);
    } public static void main(String args[])
    {
    testframe te = new testframe();
    te.test();

    }