JFrame 和JPanel 的关系-区别(学习笔记)

在学习图形用户界面的时候,搞清楚 JFrame 和 JPanel是非常关键的

下面分别给出两个例子加以区分

 

JFrame 的使用:

 

java.awt.*javax.swing.*Frame1 {
    (String[] args) {
        JFrame f = JFrame();
        f.setSize();
        f.setVisible();
        }
}


JPanel 的使用:

java.awt.*javax.swing.*Frame2 {
    (String[] args) {
        JFrame f = JFrame();
        f.setSize();
        JLabel x = JLabel();
        f.getContentPane().add(x);
        f.setVisible();
        }
}

 

JFrame用来做主页面框架也可以用来做顶级窗体要想把控件放在该界面中,必须把控件放在JPanel中,然后再把JPanel放在JFrame中,JPanel作为一个容器使用。

Jpanel是一个静态控制组件,可以用来显示一行静态信息,不能接受用户的输入。它必须放在象JFrame这样的顶级窗口上才能输出。

JFrame是最底层,JPanel是置于其面上,同一个界面只有一个JFrame,一个JFrame可以放多个JPanel。如果你直接在JFrame上放也可以,但是首先不规范,然后要是过于复杂的界面你准备如何处理这么多控件呢?你可以写个复杂的界面,应该就可以感受到这种区别了JPanel只是普通页面

JPanel可以放在JFrame中,反之不行

 

在实际应用的过程中一般的用法为:

java.awt.*javax.swing.*Frame4a {
    (String[] args) {
        JFrame f = JFrame();
        JLabel L = JLabel();
        JPanel P = JPanel();
        P.add(L);
        f.getContentPane().add(P);
        f.setSize()f.setVisible();
        }
}


你可能感兴趣的