- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验1容器、布局管理器和边框解析
实验1 容器、布局管理器和边框
一、实验名称和性质
所属课程 Java语言程序设计 实验名称 容器、布局管理器和边框 实验学时 4 实验性质 ?验证 综合?设计 必做/选做 ?必做 选做 二、实验目的
1.使用CardLayout、GridBagLayout、BoxLayout、LayeredLayout和SpringLayout等布局管理器进行布局;
2.会使用JScrollPane创建滚动窗格、学会使用JTabbedPane创建选项卡、学会使用JSplitPane创建分隔窗格;
3.使用Swing组件中的各种边框。
三、实验内容
1.使用CardLayout布局管理器编写程序(验证性内容)。
2. 使用BoxLayout布局管理器编写程序(验证性内容)。
3. 使用CardLayout管理器(设计性内容)。
4. 使用选项卡(设计性内容)。
5. 使用分隔窗格JSplitPane(设计性内容)。
四、实验的软硬件环境要求
硬件环境要求:
PC计算机;内存512MB以上
使用的软件名称、版本号以及模块:
操作系统:Windows 2000或Windows XP
软件:JDK 7.0;Eclipse
五、知识准备
前期要求掌握的知识:掌握容器和三种基本的布局管理器。
实验相关理论或原理: CardLayout 布局管理器将组件像卡片一样放置在容器中,每次仅有一张卡片是可见的,容器的作用就像一叠卡片。这些卡片的顺序是有容器中组件的内部顺序决定的。可以指定一叠组件周围的水平空隙和垂直空隙的大小。布局管理器 GridBagLayout 是最灵活、最复杂的布局管理器 。以网格的形式组织组件,组件可以改变大小,还可以按任意的顺序添加组件。不使用布局管理器:Container.setLayout(null);javax.swing.BoxLayout 在一行或一列中摆放组件,构造方法:public BoxlayLayout(Container?target, int axis)。OverlayLayout 将组件相互覆盖叠放到一起,构造方法:public OverlayLayout(Container?target)。JTabbedPane提供一组相互排斥的卡片来访问多个组件,通常在JTabbedPane中放置一些面板,每个面板对应一张卡片。JSplitPane 包含用分隔栏分隔开的两个组件,可以用分隔栏水平或垂直地分隔容器,并且拖动分隔栏可以改变每个组件所占空间的大小。
六、验证性实验
验证性实验1
1.实验要求
使用CardLayout布局管理器编写程序,布局如下图10.1所示界面。
图10.1 CardLayout布局管理器
2. 程序参考代码
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ShowCardLayout extends JApplet
implements ActionListener, ItemListener {
(1) private CardLayout cardLayout = new CardLayout() ; //定义CardLayout布局管理器
private JPanel cardPanel = new JPanel(cardLayout);
private JButton jbtFirst, jbtNext, jbtPrevious, jbtLast;
private JComboBox jcboImage;
private final int NUM_OF_FLAGS = 9;
public ShowCardLayout() {
cardPanel.setBorder(
new javax.swing.border.LineBorder(Color.red));
// Add 9 labels for displaying images into cardPanel
for (int i = 1; i = NUM_OF_FLAGS; i++) {
JLabel label =
new JLabel(new ImageIcon(image/flag + i + .gif));
cardPanel.add(label, String.valueOf(i));
}
// Panel p to hold buttons and a combo box
JPanel p = ne
文档评论(0)