当前课程知识点:Java程序设计 >  第七章 图形用户界面 >  7.2-Swing基础 >  Swing基础

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

Swing基础在线视频

Swing基础

下一节:Swing的层次

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

Swing基础课程教案、知识点、字幕

大家好 欢迎回来继续学习

JAVA语言程序设计

这一节我们来

简单了解一下Swing

在前面的小节中我们了解了

如何在窗口中

绘制简单的图形

但是大家应该想象得到

总不能我们去用

那些窗口 菜单 按纽等等

这些图形用户界面的组件的时候

我们都一个个去画吧

那效率太低了

实际上凡是支持GUI的

这样的语言

一般来说都为程序员

准备好了这些组件

我们可以从库里面

直接拿来用就行了

JAVA也是这样

那么Swing就是这样一个包

让我们可以直接去使用

它里面预定义好的这些组件

实际上我们的这个JFrame

也就是主窗口

还有JApplet

也都是Swing里面的组件

在具体了解Swing之前

我们要看看Swing

它处在什么地方 什么位置

这样的话就不得不提一下

这个JAVA基础类库 JFC

java Foundation Classes

这个JFC它是关于GUI组件

和服务的一个完整的集合

它主要会包括像AWT

java2D Accessibility

Drag Drop

还有Swing这些部分

那么Swing可以说

是JFC的一部分

它主要是提供按钮

窗口 表格等等这些控件

而且Swing里面的

绝大多数的组件

它是纯JAVA的组件

也就是完全用JAVA语言写的

在Swing出现之前

就已经有这么一个包

是为我们提供

图形用户界面组件的

这就是AWT包

但是AWT它里面提供的组件

都是重量级的

大多数都含有本地的代码

Swing组件是在AWT的

基础之上扩展而来的

注意是扩展 而不是取代

Swing组件的名称前面

都有一个J

它都是在原来

AWT组件的名称前面

加了这么一个J

比如说AWT里有Button

那么Swing组件里面

就有个JButton 代表按钮

另外后面我们要见到的

JCheckBox JScrollbar等等

那么它们都是

JComponent的子类

Swing组件就是

完全用JAVA语言编写的了

它的外观和功能

就不依赖于任何

由宿主平台的窗口系统

所提供的代码

所以我们也叫

它是轻量级的组件

当然了Swing里面

也有少量的重量级的组件

后面我们会学到

就是它的顶级容器

应该依然是重量级的组件

那么Swing的组件

可以为用户提供

更丰富的视觉感受

接下来我们就来看看

怎么样在Application

和Applet里面

使用Swing的组件

如果要在Applet里面

使用Swing组件的话

我们就需要将这些组件

加载到Applet顶级容器上面去

如果说要在一个本地应用程序中

一个Application中

使用Swing组件

同样我们要设法

将Swing加载到这个

整个的顶级容器上面去

现在我们就来看一下

在Applet中

怎么去使用Swing组件

也就是说我们怎么将

这个Swing的组件

放到Applet的显示区域中去

当然对于这些具体的组件类型

我们还没有做详细的介绍

但是没有关系

通过这个例子

我们也可以大致就了解了

像这个Button Label

它们的使用其实也挺简单的

还有就是关于事件监听器

我们也没有详细介绍呢

这个例子只是先给我们一个

基本的感觉 好

现在我们来看

这是一个Applet类

它继承了JApplet

那么当一个Applet启动的时候

它的init方法首先就要被调用

所以我们将这些添加组件的功能

都放在init方法里面了

首先我们需要去获取

一个ContentPane

是一个Applet里面的内容面板

顶级的内容面板

然后在这里面要设计一下布局

这意思就是说

如果说我们把组件放到这个

ContentPane里面去的话

按照什么样的布局来放呢

在JAVA里面有一些

预定义好的布局

像GridLayout就是一种

关于布局也在后面会详细介绍

好 接下来我们就要去构造

一个组件对象

构造一个JButton

这是一个按纽

按纽上面有一个标题

写着Click me

然后再构造一个JLabel

label是显示文本的

这么一个组件

然后我们将这个

button和label

都添加到ContentPane上面去

添加上去以后

我们如果去点击button的话

那我们希望能有点反应

我们点了一个按纽

有什么反应呢

这个就要注册事件监听器

所以在这我们要调用的

这个ActionListener

去注册一下事件监听器

那么这个用的是什么办法呢

这个事件监听器

是用了一个匿名的内部类

这个在这一章的

稍候也会给大家做详细介绍

现在大家只是简要的了解一下

在这里面注册了一个

对按纽能够进行响应的功能

比如说你点了一下按纽以后

那么在这里面就要有一些响应

什么响应呢

showInputDialog

它就会显示一个输入对话框

请你输入一串字符

那么这个字符输进去以后

就会接收到这个information

这个字符串这个string里面去了

然后我们再将这个字符串内容

显示在这个label上面

那么这就是一个

在Applet里面

使用Swing组件的简单例子

大家对于这些组件的名字

可能还陌生

对于事件响应的方式

这种监听的方式

可能也还不熟悉呢

没关系

在这一章后面都还会有机会

给大家做详细介绍的

那么我们运行的时候

看到的就是这个样子

一开始就有一个按纽

上面写的Click me

然后底下的这个label

文本区是空白的 什么都没有

那么接下来

如果你点这个Click me的话

就会弹出一个对话框

然后我们可以在这里面

输入文字内容点确定以后

大家看你输入的文字内容

就放在label这去了

如果我们要在Application中

使用Swing

方法也是类似的

一个Application

就是一个本地应用程序

它需要自己有一个主窗口

那我们来看在这个

Application里面

在主方法内方法中

构造了一个JFrame

就是一个主窗口

然后给了一个字符串

那么这个字符串

就会显示在这个

主窗口的标题栏里面

然后同样我们也需要

去取得这个frame里面的

ContentPane

取得一个顶层的内容面板

然后也是要设置它的布局

同样要将这个组件

button和label添加上去

所以我们要构造一个button

构造一个label

然后将它们添加到内容面板上

接下来注册事件监听器的方式

也是一样的

然后接下来设置大小

并且显示这个窗口

最后还要设置一下

默认的关闭窗口的操作

就是退出程序

我们运行的话界面是类似的

只不过这时候是在

Application里面

它是有一个自己的主窗口

也是点击Click me这个按纽

然后就出对话框

输入了字符串以后点确定

这个字符串就显示到

这个label上面了

好 在这一节我们对Swing

有了一个初步的了解

那接下来的内容

我们要逐步深入

更多的来了解swing

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章小结

-课件

--课件

Swing基础笔记与讨论

也许你还感兴趣的课程:

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