虽然JFrame 对象中有 add 方法,但是却不能直接用于添加 AWT 组件或者 Swing 组件,否则会抛出异常。因为JFrame 不是一个容器,它只是一个框架。向JFrame 添加组件的方式如下:

方式一:用getContentPane()方法获得JFrame的内容面板,再对其加入组件:                    

frame.getContentPane().add(childComponent);

方式二:建立一个Jpanel或JDesktopPane之类的中间容器,把组件添加到容器中,用setContentPane()方法把该容器置为JFrame的内容面板:

JPanel  contentPane=new  JPanel();

//把其它组件添加到Jpanel中
……;

//把contentPane对象设置成为frame的内容面板
frame.setContentPane(contentPane); 
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐