Java 常用面板
面板也是一种Swing容器,它可以作为容器容纳其他组件,但他必须被添加到其他容器中。Swing组件中常用的面板包括JPane面板以及JScrollPane面板。JPanelJPanel面板可以聚集一些组件来布局。我们应该明确面板也是一种容器,因为它也继承在java.awt.Container类。下面例子中,我们使用了4个面板,然后在每个面板中设置布局管理器,最后分别在4个面板中放置一些...
面板也是一种Swing容器,它可以作为容器容纳其他组件,但他必须被添加到其他容器中。Swing组件中常用的面板包括JPane面板以及JScrollPane面板。
JPanel
JPanel面板可以聚集一些组件来布局。我们应该明确面板也是一种容器,因为它也继承在java.awt.Container类。
下面例子中,我们使用了4个面板,然后在每个面板中设置布局管理器,最后分别在4个面板中放置一些组件。
package com.xsh;
import java.awt.*;
import javax.swing.*;
public class JPaneTest extends JFrame {
public JPaneTest() {
setTitle("JPanel面板");
Container container = getContentPane();
//创建四个面板
container.setLayout(new GridLayout(2,1,10,10));
JPanel jp1 = new JPanel(new GridLayout(1,3,10,10));
JPanel jp2 = new JPanel(new GridLayout(1,2,10,10));
JPanel jp3 = new JPanel(new GridLayout(1,2,10,10));
JPanel jp4 = new JPanel(new GridLayout(2,1,10,10));
JPanel[] jps = {jp1,jp2,jp3,jp4};
//下面的四个循环是在面板中添加按钮组件
for(int i =0; i<3; i++) {
jp1.add(new JButton("button" + i));
}
for(int i =0; i<2; i++) {
jp2.add(new JButton("button" + i));
}
for(int i =0; i<2; i++) {
jp3.add(new JButton("button" + i));
}
for(int i =0; i<2; i++) {
jp4.add(new JButton("button" + i));
}
//将面板添加到容器中
for (int i =0; i< jps.length; i++) {
container.add(jps[i]);
}
setSize(600,150);
setVisible(true);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new JPaneTest();
}
}
其运行结果如下:
JScrollPanel面板
在设置界面中,可能会遇到在一个较小的容器中显示一个较大部分内容的情况,这时候我们可以使用JScrollPanel面板。
JScrollPanel面板是一种带滚动条的面板,它也是一种容器,但是JScrollPanel只能放置一个组件,并且不可以使用布局管理器。如果需要在JScrollPanel面板中放置多个组件,需要将多个组件放置在JPanel面板上,然后将JPanel面板作为一个整体组件添加在JScrollPanel组件上。
下面的例子中我们将展示JScrollPanel的使用:
package com.xsh;
import java.awt.*;
import javax.swing.*;
public class JscrollPaneTest extends JFrame {
public JscrollPaneTest() {
setTitle("使用JScrollPanel组件"); //设置窗体标题
Container c = getContentPane(); //定义容器
JTextArea ta = new JTextArea(20,50); //创建文本区域组件
ta.setText("这是一个文本区域"); //设置文本区域文字
JScrollPane sp =new JScrollPane(ta); //将文本组件添加到JScrollPane组件中
c.add(sp); //将JScrollPane组件添加到容器中
setSize(200,200); //设置容器大小
setVisible(true); //设置容器可见性
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new JscrollPaneTest();
}
}
运行结果如下:
本实例可以看出,在窗体中创建一个带滚动条的文字编辑器,首先需要初始化编译器,并在初始化时指定编译器的大小。
当创建带滚动条的面板时,需要将编译器加入面板中,最后将带滚动条的编译器添加到容器中。
更多推荐
所有评论(0)