第四周 day03

本文详细介绍了Java Swing中的顶层容器如JFrame、JApplet和JDialog,以及中间层容器如JPanel、JScrollPane、JSplitPane、JTabbedPane和JToolBar。每个容器都有其特定的用途和特点,例如JPanel用于布局管理,JScrollPane带有滚动条,JSplitPane可调整组件大小,JTabbedPane实现标签页功能,而JToolBar则用于创建工具栏。JInternalFrame作为轻量级组件,常用于创建内部窗口。这些组件丰富了GUI设计,提供了灵活的用户界面构建选项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

7.8 顶层容器

Swing的3个顶层容器类:
JFrame、JApplet、JDialog;
都是重量级组件,分别继承了AWT组件的Frame、Applet、Dialog;
每个顶层容器都有一个内容面板,通常直接或间接的容纳别的可视组件;
可以有选择地为顶层容器添加菜单,菜单被放置在顶层容器上,但是在内容面板之外;
通过静态方法show xxx Dialog可以产生四种简单的对话框:它们的方法参数中绝大部分(除了输入对话框可以不指定父窗口)都需要提供一个父窗口组件ParentComponent,只有关闭这些简单的对话框后,才可以返回到其父窗口,也就是说它们绝大部分是模态的;

 7.9 中间层容器


JRootPane的层次结构:

JPanel:
默认状态下,除了背景色不绘制任何东西;
可以很容易地为它设置边框和绘制特性,有效利用JPanel可使版面管理更容易;
可以使用布局管理器规划它容纳的组件的位置和大小(可以通过setLayout方法改变布局;可以在创建JPanel对象时为它确定布局方式,默认使用FlowLayout布局(一行));

JScrollPane:
容器有滚动条,通过拖动滑块可以看到更多内容;
由9个部分组成,包括一个中心显示地带、四个角和四条边;

JSplitPane:
可以把两个组件显示在两个显示区域内,且随着区域间分隔线的拖动,区域内组件大小随之变动;
允许设置水平或垂直分割,允许设置动态拖曳功能;
通常先把组件放到ScrollPane中,再把ScrollPane放到SplitPane中,实现每部分滚动条

JTabbedPane:
如果一个窗口的功能有几项,可以给每项设置一个标签,标签下面包含若干专用组件;

JToolBar:
将常用功能以工具栏方式呈现;

JInternalFrame:
实现在一个主窗口中打开很多个文档,每个文档各自占用一个新窗口;
JInternalFrame使用和JFrame几乎一样,可以最大化、最小化、关闭窗口、加入菜单;
JInternalFrame是轻量级组件,只能是中间容器,必须依附于顶层容器上;
通常将internal frame加入JDesktopPane类的对象来方便管理,JDesktopPane继承自JLayeredPane,用来建立虚拟桌面,可以显示并管理众多internal frame之间层次关系;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值