setContentPane()与getContentPane()用法

JFrame添加组建的两种方法

前言:先得到一个窗体(JFrame),然而这个窗体除了设置窗体的大小与位置外并不能提供任何操作。在java中我们需要在窗体的基础上加入面板:Panle而后就可以在面板上进行其他操作,如设置一个按钮,标签,颜色等。
  1)用getContentPane()方法获得JFrame的内容面板
getContentPane()用法:(待补充)

    JPanel jp1 = new JPanel();
    JFrame jf = new JFrame();
    Container c =  jf.getContentPane();
    c.add(jp1);//将容器与面板叠加

  2)用setContentPane()方法获得JFrame的内容面板:
setContentPane()用法:

    JFrame jf = new JFrame();
    JPanel jp2 = new JPanel();
    jf.setContentPane(jp2);
    jp2.add(new JLabel("标签“”));
package Practice;

import java.awt.BorderLayout;
import java.awt.Color;

import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;

public class test1  extends JDialog{

public static void main(String[] args) {
    JPanel jp1 = new JPanel();
    test1 t = new test1();
    t.setBounds(10, 20, 399, 200);
    t.setTitle("1");
    t.setContentPane(jp1);
    jp1.setBackground(new Color(0,0,0));
    t.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
    t.setVisible(true);     
    new test1();

}

public test1() {
    JPanel jp2 = new JPanel();
    setTitle("2");
    setBounds(100, 100, 1071, 611); //设置对话框大小
    getContentPane().setLayout(new BorderLayout());//将外部容器布局设置为BorderLayout类型,BorderLayout将版面划分为东、西、南、北、中 
    jp2.setBackground(new Color(175, 238, 238));
    jp2.setBorder(new EmptyBorder(5, 5, 5, 5));
    getContentPane().add(jp2, BorderLayout.CENTER);
    setVisible(true);
    }
 }

你可能感兴趣的:(Java)