• 热门专题

Java中JFrame的getContentPane()和setContentPane()方法使用说明

作者:其实你可以  发布日期:2013-01-25 09:25:08
Tag标签:JFrame  getContentPane  setContentPane  
  • 首先来看一段代码:


    package test; 
     
    import java.awt.Color; 
     
    import javax.swing.JFrame; 
     
    public class TestJFrame extends JFrame { 
        public TestJFrame() { 
            setColor.GREEN); < /span>
            setBounds(200, 200, 400, 300); 
            setTitle("JFrame测试"); 
            setVisible(true); 
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        }; 
     
        public static void main(String[] args) { 
            new TestJFrame(); 
        } 
    } 
    
    

    运行可以看到,窗口出来了,但是我们并没有看到窗口的背景色被设置为了GREEN绿色。这里呢,JFrame并不能说是一个容器,它只是一个框架,那么我们怎么给JFrame设置背景色呢?

    方法一:我们可以使用getContentPane()方法得到JFrame的内容面板,设置该内容面板的背景色即可,代码如下:


    package test; 
     
    import java.awt.Color; 
     
    import javax.swing.JFrame; 
     
    public class TestJFrame extends JFrame { 
        public TestJFrame() { 
            getContentPane().setColor.GREEN); < /span>
            setBounds(200, 200, 400, 300); 
            setTitle("JFrame测试"); 
            setVisible(true); 
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        }; 
     
        public static void main(String[] args) { 
            new TestJFrame(); 
        } 
    } 
    
    

    而更常见的一种方法呢,是先新建一个JPanel之类的容器,然后使用setContentPane()方法,把该容器设置为JFrame框架的内容面板,然后再在该中间容器上面添加其他组件即可。这里的JPanel就像中间介质,或者我们可以理解为JFrame为画板,JPanel之类的中间容器为画布,画布要绑定在画板上,然后我们在画布上面作画。代码如下:


    package test; 
     
    import java.awt.Color; 
     
    import javax.swing.JFrame; 
    import javax.swing.JPanel; 
     
    public class TestJFrame extends JFrame { 
        public TestJFrame() { 
            // getContentPane().setColor.GREEN);< /span> 
            JPanel pnBasic = new JPanel(); 
            pnBasic.setColor.GREEN); < /span>
            setContentPane(pnBasic); 
            setBounds(200, 200, 400, 300); 
            setTitle("JFrame测试"); 
            setVisible(true); 
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        }; 
     
        public static void main(String[] args) { 
            new TestJFrame(); 
        } 
    } 
    
    

    和上面代码运行效果一样,如下所示:www.it165.net


About IT165 - 广告服务 - 隐私声明 - 版权申明 - 免责条款 - 网站地图 - 网友投稿 - 联系方式
本站内容来自于互联网,仅供用于网络技术学习,学习中请遵循相关法律法规