在学习图形用户界面的时候,搞清楚 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(); } }