您的位置:首页 > 编程语言 > Java开发

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

2013-01-24 15:13 801 查看
首先来看一段代码:

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();
}
}

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



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息