湖南科技职业学院软件职业技术学院
教师课时授课计划
教师姓名: 授课班级: 授课课时:8
课程名称:JAVA程序设计 第 2 课 教学循环号:
课题
接受用户数据
各教学环节课时分配
讲授
4 课时
有指导的实践
2 课时
独立实践
2 课时
教学内容
识别用户界面屏幕的组件
创建图形用户界面屏幕
重点
识别用户界面屏幕的组件
难点
创建图形用户界面屏幕
教具
多媒体
作业
独立实践
授课日期
(校历)
第 周星期 第 节
第 周星期 第 节
第 周星期 第 节
第 周星期 第 节
课后小结
通过本课的学习,学生掌握了:
用户界面的类型
典型的GUI组件
Swing包
把组件加入到框架的方法
详细教学过程附后
详细教学过程:
一、教学目标陈述(5分钟)
识别用户界面屏幕的组件
创建图形用户界面屏幕
二、图形用户界面设计概述(45分钟)
用户界面的需要
接收用户的输入
使应用用户友善
用户界面的类型
字符用户界面
图形用户界面
GUI的组件
可视化控件诸如文本框称为组件
存放这些组件的顶层窗口称为容器
组件继承它的父容器的性质
抽象窗口工具箱(AWT)
Java 1.0版中,用它创建用户接口
Java 基础类(JFC)
它是AWT的扩充
它也称为 Swing
Swing 组件提供交叉平台支持
可定制Swing组件以适合你需求– 例如:把工具提示加入到按钮控件
三、实例分析(45*3分钟)
2.D.1
1、问题陈述(接收用户的数据)
CellGo已用Java开发了应用。 如下创建了Customer 实体的类。识别其用户接口的控件和写出接收客户材料的代码。
Customer
customerName : String
customerCellNo : String
customerPackage : String
customerAge : int
2、确定任务
识别接收客户材料的控件
识别每个控件中要显示的缺省值
识别控件的大小
识别框架窗口的标题和大小
创建框架窗口
加入控件到框架窗口
保存、编译、及执行程序
3、分析解决问题
识别接收客户材料的控件
控件:
用来简化用户交互
Java 中可用控件是:标号、文本框、文本区、下推按钮、单选按钮、复选按钮、列表、及组合框。
结果
文本框接收单行字母入口,组合框对单个项目选择显示下拉式列表,用控件接收客户材料如下:
Attribute
Controls
customerName
Label, Text Box
CustomerCellNo
Label, Text Box
customerPackage
Label, Combo Box
customerAge
Label, Text Box
识别每个控件中要显示的缺省值
结果
Attribute
Control
Value
customerName
Label
Text Box
“Customer Name: ”
none
customerCellNo
Label
Text Box
“Cell Number: ”
none
customerPackage
Label
Combo Box
“Package: ”
“Executive”, “Standard”
customerAge
Label
Text Box
“Age: ”
none
识别控件的大小
结果
Attribute
Control
Value
customerName
Text Box
30 Characters
customerCellNo
Text Box
15 Characters
customerPackage
Combo Box
Default
customerAge
Text Box
2 Characters
识别框架窗口的标题和大小
结果
将显示客户材料框架窗口的标题是“Customer Details Form”.
此窗口的大小是 300 x 300 象素.
创建框架窗口
javax.swing 包:
包含 Jcomponent类 – 所有图形用户界面组件的基类
提供了组件类,如: JLabel, JTextField, JButton, JRadioButton, JList, 及 JComboBox
提供了容器类,如:JFrame, JPanel, 及 JApplet
Swing组件的类层次结构:
所有组件继承大量的JComponent 类的功能,列表如下:
方法
描述
Graphics getGraphics()
返回帮助你在组件上画组件的图形内容
void setBackground(Color bg)
设置组件的背景颜色.
void setFont(Font f)
设置在组件中显示文本的字体
Graphics getGraphics()
返回帮助你在组件上画组件的图形内容
void setBackground(Color bg)
设置组件的背景颜色.
void setFont(Font f)
设置在组件中显示文本的字体
void setToolTipText(String t)
设置在组件中显示的工具箱文本
void setVisible(boolean b)
支持组件是否将是可见的
void setSize(int height, int width)
设置组件的高和宽
The JFrame class:
用构造符创建你应用的框架窗口
包含 setVisible(), setSize (),及 getContentPane() 方法
可用带EXIT_ON_CLOSE 选项的 setDefaultCloseOperation() 方法将在关闭框架窗口时退出应用
例子:
JFrame swingFrame = new JFrame ("Swing Frame"); swingFrame.setDefaultCloseOperation(EXIT_ON_CLOSE);
JButton buttonObject = new JButton ("Swing Button"); swingFrame.getContentPane().add(buttonObject); swingFrame.setVisible(); swingFrame.setSize(200,200);
加入控件到框架窗口
JPanel 类
提供了加入组件到框架的更简单的方法
例子:
JFrame swingFrame = new JFrame("Swing Frame");
swingFrame.setDefaultCloseOption(EXIT_ON_CLOSE);
JButton button1 = new JButton("First Button");
JButton button2 = new JButton("Second Button");
JPanel panel=new JPanel(); panel.add(button1);
panel.add(button2);
swingFrame.getContentPane().add(panel);
JLabel 类
创建标号控件的构造符
构造符取标号控件的标题为输入
JTextField 类
创建 textfield控件的构造符
构造符取textfield 控件的长度为输入
提供 getText() 和 setText() 方法
JList 类
创建带有一组值的列表框的构造符
setSelectionMode() 方法用于配置列表框
它提供了方法如:getSelectedValue(), getSelectedValues (), 及 setVisibleRowCount (int)
JComboBox 类:
只允许选择单个元素
提供 setEditable()方法
动作
属性
类
变量
customerName
JLabel
JTextField
labelCustName
textCustName
customerCellNo
JLabel
JTextField
labelCustCellNo
textCustCellNo
customerPackage
JLabel
JComboBox
labelCustPackage
comboCustPackage
customerAge
JLabel
JTextField
labelCustAge
textCustAge
编码 Customer类
4、验证
保存、编译、及执行程序
四、指导性练习(45*2分钟)
1.P.1
1、问题陈述(接收用户的数据)
每当新商人加入CellGo,该商人的材料(如:商人的名、地址、电话号、及商人提供的服务)必须被记录下来。你需创建接收商人材料的用户界面。用户界面的功能说明如下:
对可存放地址字段的字符个数不应有限制.
界面应允许为商人选择多种服务.
(提示:对接收商人地址使用文本域控件。商人提供诸如:“Free service charges”, “Gifts for mobiles bought”, 和 “10% discount on new mobiles bought”的服务)
2、问题分析
3、验证
五、小结(10分钟)
六.独立实践(90分钟)
布置学生进行独立实践2.MR.1、2.MR.2
根据完成情况进行少量讲解