当前课程知识点:Java程序设计 >  第七章 图形用户界面 >  7.8-顶层容器 >  7.8-顶层容器

返回《Java程序设计》慕课在线视频课程列表

7.8-顶层容器在线视频

7.8-顶层容器

下一节:7.9-中间层容器(一)

返回《Java程序设计》慕课在线视频列表

7.8-顶层容器课程教案、知识点、字幕

大家好

欢迎回来继续学习Java语言程序设计

这一节我们来了解一下

swing的顶层容器

我们知道swing它这个组件的结构

是以顶层容器为根的

这么一个树状的结构

那么每个组件

都只能放在一个容器上

如果你把一个组件

放在这个容器上

然后一会儿

你又把它放在另外一个容器上

那它就会从先前的容器上移走了

接下来我们就来详细了解一下

Javaswing的顶层容器

swing有三个顶层容器类

它们是JFrame JApplet和JDialog

这一个都是重量级的组件

分别继承了AWT组件的Frame Applet和Dialog

每个顶层容器它都有一个内容面板

通常是直接或间接的容纳别的组件的

我们可以有选择的

为顶层容器添加菜单

菜单是放在顶层容器上

但是是在内容面板之外的

这就是JFrame的继承结构

我们可以看到

它是继承了AWT的JFrame

JApplet也是继承了AWT的Applet

JDialog是直接继承了AWT的Dialog

那么我们怎么去

获得一个顶层容器

只有JApplet是

由浏览器自动生成的

我们不需要去构造JApplet对象

那么JFrame和JDialog

都需要我们去构造对象

并且用构造方法去初始化

这里列出了这几个顶层容器

它们的构造方法

我就不一一仔细的去分析了

大家可以参考这张表的内容

自己去尝试写一些程序用一用

下面我们就来通过例题

来看一下这三个顶层容器怎么用

首先我们来看一个Frame的应用

Frame是一个顶层容器

也实际上就是我们的

应用程序的主窗口

我们看这个程序运行起来

就是展示了这么一个窗口

然后我们来看看代码

首先是要构造一个JFrame的对象

然后它上面应该是有一个标题的

窗口标题

那我们看到因为窗口很小

这标题没显示出来

如果我们把它拉大的话

大家会看到这窗口的标题是这个

然后接下来就要设置

它的默认的关闭按钮的功能

关闭按钮退出程序

设计这个功能

接下来我们要在窗口中

放一个什么放一个Label

一个Label它是用来显示文本的

但是现在这个Label上

我们是给的是空串

所以是一个空的Label没有文本

然后设置一下这个Label的大小

给了一个尺寸

接下来就要从这个Frame

这个顶层容器中获得

一个内容面板getContentPane

然后将这个Label一个空的Label

加到内容面板上去

就是这一块区域

然后把它大小调成合适的

然后设置成可见的

这就是一个简单的

顶层容器的一个演示

现在我们再来看一下这个例子

这个例子运行的时候我们看到

这个窗口里有点热闹

有天蓝的有黄的

它们分别都是什么呢

好 我们来看一下代码

首先也是要构造一个Frame

又一个JFrame作为

这个顶层容器这个主窗口

然后要构造一个Label

Label上面同样还是没有文字

是空的

只是我们后面

要把它的颜色设置一下

把它的背景颜色设置成黄颜色

然后同样设立一下大小

那么接下来我们看到

又构造了一个JMenuBar

所以这一条是MenuBar

只不过现在我们

没往上加任何菜单和菜单项

但是菜单条是在这儿了

然后这个MenuBar

被设置成天蓝色了

好 接下来我们就

将这个Label和MenuBar

都添加到这个窗口里面去

这个Label是添加在哪儿

是添加在这个内容面板上

我们来看getContentPane

得到内容面板以后添加这个Label

而MenuBar是添加在哪儿

它添加在这个Frame里面

但是不在内容面板里面

它是用JMenuBar设置添加上去的

接下来这个例子就要展示一下

怎么样来使用对话框

要使用对话框就要通过静态方法

show什么什么Dialog

来给出对话框来

这些方法可以产生

四种简单的对话框

它们的方法参数中

除了输入对话框

可以不指定副窗口以外

其他的都需要

提供一个副窗口组件

只有关闭这些简单对话框以后

才可以返回到它的副窗口

也就是说它们绝大部分

都是模态的

现在我们来看一下

这个例题的源代码

先看一下我们

这个例题运行的状态

运行的时候我们就会看到

在这个窗口中有一个退出按钮

那么点到退出按钮以后

就会出现一个

确认退出的这个对话框

问你要确认退出吗

这时候你可以点确定或者是取消

好 那我们来看

这个JOptionPaneDemo

它就扩展了JFrame

实现了ActionListener

所以它自己就起到了

事件监听器的作用

同样一开始还是

将这个标题传给它的超类

也就是最后会在这个窗口的

这个标题的位置显示简单对话框

如果窗口拉大的话

你会看到完整的标题

然后要得到这个内容面板

接下来就要构造这个退出按钮

构造一个按钮

然后给按钮注册监听器

这个监听器就注册为当前对象自己

因为当前类

它实现了ActionListener这个接口

然后设置它的layout布局

最后把这个Button

添加到内容面板上去

好 那再看

这是ActionPerformed的事件响应方法

在这个事件响应方法中要干什么

要弹出对话框来

我们来看这个是一个确认对话框

那就是调用showConfirmDialog

然后提示信息就是确定要退出吗

然后用户可以选择确定或者取消

如果选择了确定那就退出程序

如果选择取消当然就不退出程序

这个事件反应结束以后

这个确认对话框关闭了以后

就会还是依然回到原来的窗口

再看这个主方法中构造了

一个JOptionPaneDemo这个对象

然后设置了一下

主窗口的这个默认关闭

然后将主窗口的大小设置合适

然后显示就可以了

好 这一节我们了解了一下

Label的顶层容器

那这一节内容就是这样

Java程序设计课程列表:

第一章 Java语言基础知识

-1.0-导学

--1.0-导学

--JDK的安装与配置01

--JDK的安装与配置02

--JDK的安装与配置03

--编辑并执行第一个java程序01

--编辑并执行第一个java程序02

--编辑并执行第一个java程序03

--eclipse的安装和配置01

--eclipse的安装和配置02

--eclipse的安装和配置03

--使用eclipse进行Java的开发01

--使用eclipse进行Java的开发02

--使用eclipse进行Java的开发03

-1.1-Java与面向对象程序设计简介

--1.1.1 Java与面向对象程序设计简介

--第一章 Java语言基础知识--1.1-Java与面向对象程序设计简介

-1.2-基本数据类型与表达式

--1.2.1-基本数据类型与表达式

-第一章 Java语言基础知识--1.2-基本数据类型与表达式

-1.3-数组

--1.3.1-数组

-第一章 Java语言基础知识--1.3-数组

-1.4-算法的流程控制

--1.4.1-算法的流程控制

--第一章 Java语言基础知识--1.4-算法的流程控制

-1.5-第一章小结

--1.5.1-第一章小结

-第一章编程练习题

-课件

--外部链接

第一章续-习题讲解视频

-Java环境配置、Eclipse使用、Helloworld程序详解

--JAVA的安装和配置

--编写并执行第一个Java程序及Java的跨平台性

--eclipse的安装和配置

--使用eclipse建立Java项目、编写和运行Java程序

--Java注释和Eclipse中的注释操作

--详解HelloWorld程序

-Java数据类型

--Java数据类型介绍

--Java整数类型

--Java浮点类型

--Java字符类型和布尔类型

--数据类型实战

--数据类型转换

--Java强制类型转换精度损失示例与表达式中的数据类型转换

-Java数组

--Java数组介绍、声明与使用

--一维数组的初始化与length属性

--数组索引的原理与使用

--二维数组的介绍与使用

-Java变量

--Java的变量

-命令行参数

--命令行参数的介绍

第二章 类与对象

-2.0-导学

--2.0-导学

-2.1-面向对象方法的特性

--2.1-面向对象方法的特性

--第二章 类与对象--2.1-面向对象方法的特性

-2.2-1-类声明与对象创建

--2.2-1-类声明与对象创建

--第二章 类与对象--2.2-1-类声明与对象创建

-2.2-2-数据成员

--2.2-2-数据成员

--第二章 类与对象--2.2-2-数据成员

-2.2-3-方法成员

--2.2-3-方法成员

--第二章 类与对象--2.2-3-方法成员

-2.2-4-包

--2.2-4-包

--第二章 类与对象--2.2-4-包

-2.2-5-类的访问权限控制

--2.2-5-类的访问权限控制

--第二章 类与对象--2.2-5-类的访问权限控制

-2.3-1-对象初始化

--2.3-1-对象初始化

--第二章 类与对象--2.3-1-对象初始化

-2.3-2-内存回收

--2.3-2-内存回收

--第二章 类与对象--2.3-2-内存回收

-2.4-枚举类

--2.4-枚举类

--第二章 类与对象--2.4-枚举类

-2.5-应用举例

--2.5-应用举例

-2.6-第2章小结

--2.6-第2章小结

-第二章编程练习题

-课件

--第二章课件

第三章 类的重用

-3.0-导学

--3.0-导学

-3.1.1-3.1.2-类继承的概念和语法

--3.1.1-3.1.2-类继承的概念和语法

--第三章 类的重用--3.1.1-3.1.2-类继承的概念和语法

-3.1.3-隐藏和覆盖

--3.1.3-隐藏和覆盖

--第三章 类的重用--3.1.3-隐藏和覆盖

-3.2-Object 类

--3.2-Object 类

--第三章 类的重用--3.2-Object 类

-3.3-终结类与终结方法

--3.3-终结类与终结方法

--第三章 类的重用--3.3-终结类与终结方法

-3.4-抽象类

--3.4-抽象类

--第三章 类的重用--3.4-抽象类

-3.5-泛型

--3.5-泛型

--第三章 类的重用--3.5-泛型

-3.6-类的组合

--3.6-类的组合

-3.7-小结

--3.7-小结

-第三章编程练习题

-课件

--课件

第四章 接口与多态

-4.0-导学

--导学

-4.1-接口

--接口

--第四章 接口与多态--4.1-接口

-4.2.1-4.2.2-类型转换

--类型转换

--第四章 接口与多态--4.2.1-4.2.2-类型转换

-4.2.3-方法的查找

--方法的查找

--第四章 接口与多态--4.2.3-方法的查找

-4.3-多态的概念

--多态的概念

--第四章 接口与多态--4.3-多态的概念

-4.4-多态的应用举例

--多态的应用举例

--第四章 接口与多态--4.4-多态的应用举例

-4.5-构造方法与多态性

--构造方法和多态性

--第四章 接口与多态--4.5-构造方法与多态性

-4.6-本章小结

--本章小结

-第四章编程作业

-课件

--课件

第五章 输入输出

-5.0-导学

--5.0-导学

-5.1.1-5.1.2-异常处理的概念

--5.1.1-5.1.2-异常处理的概念

--第五章 输入输出--5.1.1-5.1.2-异常处理的概念

-5.1.3-5.1.5-异常的处理

--5.1.3-5.1.5-异常的处理

--第五章 输入输出--5.1.3-5.1.5-异常的处理

-5.2-输入输出流的概念

--输入输出流的概念

--第五章 输入输出--5.2-输入输出流的概念

-5.3.1-写文本文件

--写文本文件

--第五章 输入输出--5.3.1-写文本文件

-5.3.2-读文本文件

--读文本文件

--第五章 输入输出--5.3.2-读文本文件

-5.3.3-写二进制文件

--写二进制文件

--第五章 输入输出--5.3.3-写二进制文件

-5.3.4-读二进制文件

--读二进制文件

-5.3.5-File类

--File类

-5.3.6-处理压缩文件

--处理压缩文件

-5.3.7-对象序列化

--对象序列化

-5.3.8-随机文件读写

--随机文件读写

-5.4-本章小结

--本章小结

-课件

--课件

第六章 对象群体的组织

-6.0-导学

--导学

-6.1-Java集合框架介绍

--Java集合框架介绍

--第六章 对象群体的组织--6.1-Java集合框架介绍

-6.2-主要接口及常用的实现类

--6.2-主要接口及常用的实现类

--第六章 对象群体的组织--6.2-主要接口及常用的实现类

-6.3-常用算法

--常用算法

-6.4-数组实用方法

--6.4-数组实用方法

-6.5-基于动态数组的类型(Vector, ArrayList)

--基于动态数组的类型(Vector, ArrayList)

-6.6-遍历Collection

--遍历Collection

-6.7-Map接口及其实现

--Map接口及其实现

-6.8-第6章小结

--第6章小结

-课件

--课件

第七章 图形用户界面

-7.0-导学

--导学

-7.1-绘图

--绘图

-7.2-Swing基础

--Swing基础

-7.3-Swing的层次

--Swing的层次

-7.4-布局管理

--布局管理

-7.5-内部类

--内部类

-7.6-事件处理的基本概念

--事件处理的基本概念

-7.7-事件派发机制

--事件派发机制

-7.8-顶层容器

--7.8-顶层容器

-7.9-中间层容器(一)

--7.9-中间层容器(一)

-7.10-中间层容器(二)

--7.10-中间层容器(二)

-7.11-原子组件(一)

--7.11-原子组件(一)

-7.12-原子组件(二)

--7.12-原子组件(二)

-7.13-原子组件(三)

--7.13-原子组件(三)

-7.14-其它Swing特性

--7.14-其它Swing特性

-7.15-第7章小结

--7.15-第7章小结

-课件

--课件

7.8-顶层容器笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。