2
推荐关于setContentPane()和getContentPane()的应用
------摘要:java_流子 Fab.19 2006--------
我们可以在 JFrame 对象中添加 AWT 或者 Swing 组件。但是,虽然它有 add 方法,却不能直接用于添加组件,否则会抛出异常——不信就试试。造成这个现象的原因只有一个解释:JFrame 不是一个容器,它只是一个框架。那么,应该怎么添加组件呢?
JFrame 有一个 Content Pane,窗口能显示的所有组件都是添加在这个 Content Pane 中。JFrame 提供了两个方法:getContentPane 和 setContentPane 就是用于获取和设置其 Content Pane 的。
对JFrame添加组件有两种方式:
1)用getContentPane()方法获得JFrame的内容面板,再对其加入组件:frame.getContentPane().add(childComponent)
2)建立一个Jpanel或JDesktopPane之类的中间容器,把组件添加到容器中,用setContentPane()方法把该容器置为JFrame的内容面板:
JpanelcontentPane=newJpanel();
……//把其它组件添加到Jpanel中;
frame.setContentPane(contentPane);
//把contentPane对象设置成为frame的内容面板
Good luck!
分享到:
相关推荐
frame.getContentPane().setLayout(null); SwingController controller = new SwingController(); SwingViewBuilder factory = new SwingViewBuilder(controller); JPanel viewerComponentPanel = factory....
setContentPane(contentPane);//给窗体加个panel作为内容面板 contentPane.setLayout(null); numberField = new JTextPane(); numberField.addKeyListener(new KeyAdapter() {//键盘事件监听者 public void...
this.setContentPane(panel); for (int i = 0; i < walls.length; i++) { walls[i] = new JLabel(new ImageIcon("wall.png")); panel.add(walls[i]); walls[i].setBounds(pos[i * 2] * 48, pos[i * 2 +...
this.setContentPane(getJpanel()); this.setDefaultCloseOperation(EXIT_ON_CLOSE); this.setResizable(false); this.setLocation(300, 150); this.setTitle("石头-剪刀-布"); this.setVisible(true); ...
setContentPane(contentPane);// JPanel topPanel = new JPanel(){ public void paintComponent(Graphics g) { g.drawImage(new ImageIcon("image\\logintop1.jpg").getImage(), 0, 0,500,48, null); super....
this.setContentPane(getJContentPane()); this.setTitle("删除房屋信息"); } /** * This method initializes jContentPane * * @return javax.swing.JPanel */ private JPanel getJContentPane() { if ...
setContentPane(contentPane); contentPane.setLayout(new GridLayout(5,1)); JLabel label = new JLabel(" 个人通讯录"); label.setFont(new Font("宋体", Font.PLAIN, 33)); contentPane.add(label);
setContentPane(jpanel);//作用类似于add() setSize(1200,700);//设置窗口大小 setResizable(false);//不可改变大小 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭 setLocationRelativeTo(null)...
setContentPane(createDemoBar()); } // 生成显示图表的面板 public static JPanel createDemoBar() { JFreeChart jfreechart = createChart(createDataset()); return new ChartPanel(jfreechart); } /...
避开狗和陷阱,否则,您将丧生或丧生。 标准控制: W-前进A-往左走S-回去D-往右走游戏中的行动屏幕截图-菜单玩帮助游戏结束赢说明代码模型-游戏逻辑。 视图-绘制游戏对象。 控制器-与用户互动。1)控制器Main ...
自定义阶梯布局 设置简单 setTitle("自定义阶梯布局"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300);... setContentPane(contentPane); setLayout(new LadderLayout());