JFrame用来做主页面框架,JPanel只是普通页面
JPanel可以放在JFrame中,反之不行

解决方案 »

  1.   

    JFrame 可以做顶级窗体
    JPanel 不可以
      

  2.   

    JFrame 可以看成,最底级容器,可以包括其他上级容器包括JPanel
      

  3.   

    可以考虑使用JSplitPane
    或者用布局管理器
      

  4.   

    JFrame只是一个界面,也就是个框架,要想把控件放在该界面中,必须把控件放在JPanel中,然后再把JPanel放在JFrame中,JPanel作为一个容器使用。
      

  5.   

    import java.awt.GridLayout;import javax.swing.JFrame;
    import javax.swing.JPanel;public class index extends JFrame
    {
    JPanel contentPane;
    public index()
    {
    contentPane=(JPanel)this.getContentPane();

    setSize(400,300);
    setDefaultCloseOperation(2);

    GridLayout gridLayout= new GridLayout();
    gridLayout.setColumns(2);
    gridLayout.setRows(2);
    contentPane.setLayout(gridLayout);
    contentPane.add(new JPanel(),null);
    contentPane.add(new JPanel(),null);
    contentPane.add(new JPanel(),null);
    contentPane.add(new JPanel(),null);

    setVisible(true);
    }
    public static void main(String args[])
    {
    new index();
    }
    }
      

  6.   

    学过vc吗CMainFrame

    CSView
      

  7.   

    一个很好的布局管理器的例子,也是一个JApplet的例子,需要有HTML文件
    import javax.swing.*;
    import java.awt.*;public class Applicant extends JApplet
    {
    JPanel panel;

    GridBagLayout gl;
    GridBagConstraints gbc;

    public void init()
    {
    panel =(JPanel)getContentPane();
    panel.setLayout(gl);

    gl=new GridBagLayout();
    gbc=new GridBagConstraints();

    Button b1=new Button("button 1");
    Button b2=new Button("button 2");
    Button b3=new Button("button 3");
    Button b4=new Button("button 4");
    Button b5=new Button("button 5");
    Button b6=new Button("button 6");

    //gbc.fill=GridBagConstraints.HORIZONTAL;
    //gbc.fill=GridBagConstraints.VERTICAL;
    //gbc.fill=GridBagConstraints.NONE;
    gbc.fill=GridBagConstraints.BOTH;

    gbc.anchor=GridBagConstraints.CENTER;
    //gbc.anchor=GridBagConstraints.EAST;
    //gbc.anchor=GridBagConstraints.SOUTH;
    //gbc.anchor=GridBagConstraints.WEST;
    //gbc.anchor=GridBagConstraints.NORTH;
    //gbc.anchor=GridBagConstraints.NORTHEAST;
    //gbc.anchor=GridBagConstraints.NORTHWEST;
    //gbc.anchor=GridBagConstraints.SOUTHEAST;
    //gbc.anchor=GridBagConstraints.SOUTHWEST;
    gbc.weightx=1.0;

    gbc.gridheight=1;
    gl.setConstraints(b1,gbc);
    panel.add(b1);

    gbc.gridwidth=GridBagConstraints.RELATIVE;
    gl.setConstraints(b2,gbc);
    panel.add(b2);

    gbc.gridwidth=GridBagConstraints.REMAINDER;
    gl.setConstraints(b3,gbc);
    panel.add(b3);

    gbc.weightx=0.0;
    gbc.weighty=1.0;

    gbc.gridwidth=1;
    gbc.gridheight=2;
    gl.setConstraints(b4,gbc);
    panel.add(b4);

    gbc.gridwidth=GridBagConstraints.REMAINDER;
    gbc.gridheight=1;
    gl.setConstraints(b5,gbc);
    panel.add(b5);

    gbc.gridwidth=GridBagConstraints.REMAINDER;
    gbc.gridheight=1;
    gl.setConstraints(b6,gbc);
    panel.add(b6);
    }
    }