第13章 Swing程序设计----常用面板
面板也是一个Swing容器,它可以作为容器容纳其他组件,但它也必须被添加到其他容器中。
Swing常用的面板包括JPanel面板和JScrollPanel面板。
1、JPanel面板
import java.awt.*;
import javax.swing.*;
public class JPanelTest extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
public JPanelTest() {
Container c = getContentPane();
// 将整个容器设置为2行1列的网格布局
c.setLayout(new GridLayout(2, 1, 10, 10));
// 初始化一个面板,设置1行3列的网格布局
JPanel p1 = new JPanel(new GridLayout(1, 3, 10, 10));
JPanel p2 = new JPanel(new GridLayout(1, 2, 10, 10));
JPanel p3 = new JPanel(new GridLayout(1, 2, 10, 10));
JPanel p4 = new JPanel(new GridLayout(2, 1, 10, 10));
p1.add(new JButton("1")); // 在面板中添加按钮
p1.add(new JButton("1"));
p1.add(new JButton("2"));
p1.add(new JButton("3"));
p2.add(new JButton("4"));
p2.add(new JButton("5"));
p3.add(new JButton("6"));
p3.add(new JButton("7"));
p4.add(new JButton("8"));
p4.add(new JButton("9"));
c.add(p1); // 在容器中添加面板
c.add(p2);
c.add(p3);
c.add(p4);
setTitle("在这个窗体中使用了面板");
setSize(420, 200);
setVisible(true);
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
}
public static void main(String[] args) {
new JPanelTest();
}
}

在该类中创建4个JPanel面板组件,并将其添加到窗体中。
2、JScrollPane面板
在设置界面时,可能遇到在一个较小的容器窗体中显示一个较大部分的内容的情况这是可以使用JScrollPane面板。
JScrollPane面板是带滚动条的面板,它也是一种容器,但是JScrollPane只能放置一个组件,并且不可以使用布局管理器。
如果需要在JScrollPane面板中放置多个组件,需要将多个组件放置在JPanel面板上,然后将JPanel面板作为一个整体组件添加在JScrollPane组件上。
import java.awt.*;
import javax.swing.*;
public class JScrollPaneTest extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
public JScrollPaneTest() {
Container c = getContentPane(); // 创建容器
JTextArea ta = new JTextArea(20, 50); // 创建文本区域组件
JScrollPane sp = new JScrollPane(ta); // 创建JScrollPane面板对象
c.add(sp); // 将该面板添加到该容器中
setTitle("带滚动条的文字编译器");
setSize(200, 200);
setVisible(true);
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
}
public static void main(String[] args) {
new JScrollPaneTest();
}
}

第13章 Swing程序设计----常用面板的更多相关文章
- 第13章 Swing程序设计----常用事件监听器
组件本身并不带有任何功能.这时需要为这些组件添加特定事件监听器. Swing中常用的两个事件监听器,即动作事件监听器和焦点事件监听器.
- 第13章 Swing程序设计
1.Swing概述 GUI(图形用户界面)为程序提供图形界面,最初的设计目的是为程序员构建一个通用的GUI,使其能够在所有平台上运行.但Java 1.0中基础类AWT(抽象窗口工具箱)并没有达到这个要 ...
- 【Swing程序设计/常用面板】
面板也是一个Swing容器,可以作为容器容纳其他组件,但是它必须要被添加到其他容器中.Swing常见的面板是JPanel面板和JScrollPanel面板. JPanel面板可以聚集一些组件来布局. ...
- 第13章 Swing程序设计----JFrame窗体
JFrame窗体是一个容器,它是Swing程序中各个组件的载体,可以将JFrame看作是承载这些Swing组件的容器. 在开发应用程序时可以通过继承java.swing.JFrame类创建一个窗体,在 ...
- 第13章 Swing程序设计----JDialog窗体
JDialog窗体是Swing组件中的对话框 JDialog窗体的功能是从一个窗体中弹出另一个窗体,就像是在使用IE浏览器时弹出的确定对话框一样. 在应用程序中创建JDialog窗体需要实例化JDia ...
- 第13章 Swing程序设计----标签组件与图标
在Swing中显示文本或提示信息的方法是使用标签.本节将探讨Swing标签的用法.如何创建标签,以及如何在标签上放置文本和图标. 1.标签的使用 标签可以显示一行只读文本.一个图像或带图像的文本,它并 ...
- 第13章 Swing程序组件----常用布局管理器
在Swing中,每个组件在容器中都有一个具体的位置和大小,而在容器中摆放各种组件时很难判断其具体位置和大小.布局管理器提供了Swing组件安排.展示在容器中的方法及基本的布局功能. Swing提供的常 ...
- Java进阶篇(六)——Swing程序设计(下)
三.布局管理器 Swing中,每个组件在容器中都有一个具体的位置和大小,在容器中摆放各自组件时很难判断其具体位置和大小,这里我们就要引入布局管理器了,它提供了基本的布局功能,可以有效的处理整个窗体的布 ...
- Java核心技术卷一基础知识-第7章-图形程序设计-读书笔记
第7章 图形程序设计 本章内容: * Swing概述 * 创建框架 * 框架定位 * 在组件中显示信息 * 处理2D图形 * 使用颜色 * 文本使用特殊字体 * 显示图像 本章主要讲述如何编写定义屏幕 ...
随机推荐
- HTML+CSS Day11产品网站
1.佰亿首页 效果图: 代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht ...
- 简单的JDBC连接oracle数据库例子
java连接Oracle数据库 JDBC(Java Data Base Connectivity,java数据库连接),那么我们该如何用java进行数据库的连接呢. import java.sql.C ...
- SqlSever 查询基本
查询语句: SQL sever 查询语句: 1.查询所有字段: select * from UserInfo 2.条件筛选 (如查询UserInfo中的UserName) select UserNam ...
- [转载]Winform中Control的Invoke与BeginInvoke方法
转自http://www.cppblog.com/baby-fly/archive/2010/04/01/111245.html 一.为什么 Control类提供了 Invoke和 BeginInvo ...
- 基于ZooKeeper的分布式Session实现
1. 认识ZooKeeper ZooKeeper—— “动物园管理员”.动物园里当然有好多的动物,游客可以根据动物园提供的向导图到不同的场馆观赏各种类型的动物,而不是像走在原始丛林里,心惊胆颤的被 ...
- java 常用的三大集合类
一.Set集合.其主要实现类有HashSet.TreeSet.存放对象的引用,不允许有重复对象. 代码: public class SetTest { public static void main( ...
- redis----查询keys(模糊匹配)
keys * 返回所有的key keys h?llo 类似数据库的匹配使用 keys h*lleo 类似数据库的匹配使用 keys h[ae]llo 只能是a或e的匹配 一次设置多个keys ms ...
- Ip 讲解
IP地址分类以及C类IP地址的子网划分 国际规定:把所有的IP地址划分为 A,B,C,D,E A类地址:范围从0-127,0是保留的并且表示所有IP地址,而127也是保留的地址,并且是用于测试环回用的 ...
- iosiOStextView实现文字高度自适应
跟为textView设置提示性文字一样 需要在textView的代理方法中实现如下 如有偏差 请谅解 定义UITextView,实现UITextViewDelegate: -(UITextVie ...
- 关于C++中字符的转换
VS的工程属性中我们常会设置Character Set: