第14章界面层开发.ppt

上传人:本田雅阁 文档编号:2986227 上传时间:2019-06-20 格式:PPT 页数:62 大小:736.02KB
返回 下载 相关 举报
第14章界面层开发.ppt_第1页
第1页 / 共62页
第14章界面层开发.ppt_第2页
第2页 / 共62页
第14章界面层开发.ppt_第3页
第3页 / 共62页
第14章界面层开发.ppt_第4页
第4页 / 共62页
第14章界面层开发.ppt_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《第14章界面层开发.ppt》由会员分享,可在线阅读,更多相关《第14章界面层开发.ppt(62页珍藏版)》请在三一文库上搜索。

1、1,第14章 界面层开发,编写GUI类查找图书 实现图书管理主界面 在单独窗口中添加新图书 添加顾客,2,14.1 编写GUI类查找图书,图书查询界面的框架使用BorderLayout布局管理器。,3,14.1 编写GUI类查找图书,“查询条件”右面使用组合框,组合框中设置三个选项:空、书名、作者。 可将选项放在字符串数组searchwaydata中,并以此为参数生成JComboBox组件。 使用searchWay.getSelectedIndex()方法就可以得到用户的选项。,4,14.1 编写GUI类查找图书,使用下面的代码生成数据表,初始时数据表为空。,5,14.1 编写GUI类查找图书

2、,假设要查询的书事先存储在向量books中,可以定义下面的方法初始化books的值。,6,14.1 编写GUI类查找图书,当用户选择了查询方式,并在后面的inputString文本框中输入了查询字符串,单击【查询】按钮,则调用事件处理程序在books中查找符合条件的图书(定义search_Book方法实现),结果存储到myVector向量中。,7,14.1 编写GUI类查找图书,定义search_Book方法:在books中查询字符串s是否存在,flag=0时返回所有books中的所有图书,flag=1时按书名查询,flag=2时按作者查询,最后返回查询结果。,8,14.1 编写GUI类查找图

3、书,定义search_Book方法,9,14.1 编写GUI类查找图书,BookSearch类定义,10,14.1 编写GUI类查找图书,BookSearch类定义,11,14.1 编写GUI类查找图书,BookSearch类定义,12,14.1 编写GUI类查找图书,13,14.1 编写GUI类查找图书,BookSearch类定义,14,14.1 编写GUI类查找图书,BookSearch类定义,15,14.1 编写GUI类查找图书,运行效果,16,14.2 实现图书管理主界面,实现图书管理界面布局 定义BookGUI类实现Swing风格的图书管理界面。,17,14.2 实现图书管理主界面,

4、为了突破JTable构造方法的限制,需要定义自己的TableMode类MyTableMode; 将books的值作为参数带到MyTableMode类中。,18,14.2 实现图书管理主界面,BookGUI类定义,19,14.2 实现图书管理主界面,BookGUI类定义,20,14.2 实现图书管理主界面,BookGUI类定义,21,14.2 实现图书管理主界面,BookGUI类定义,22,14.2 实现图书管理主界面,事件响应:编写【增加】按钮的事件响应代码,并加到构造方法BookGUI()中,放在最后。,23,14.2 实现图书管理主界面,点击【增加】按钮,系统在图书列表区增加一行,但最左一

5、列显示的是“false”。,24,14.2 实现图书管理主界面,为了在最左列显示未选中的复选框,需要在MyTableModel类的定义中增加getColumnClass方法。,25,14.2 实现图书管理主界面,要对列表区中的数据进行编辑,还需要在MyTableModel类的定义中增加下面的两个方法:,26,14.2 实现图书管理主界面,修改按钮点击事件的响应,27,14.2 实现图书管理主界面,删除按钮点击事件的响应:删除某本书时要先选中前面的复选框,再单击删除按钮即可。如果没有选中任何行,则没有提示。,28,14.2 实现图书管理主界面,删除按钮点击事件的响应:改进,增加提示。,29,14

6、.2 实现图书管理主界面,删除按钮点击事件的响应:改进,增加提示。,30,14.3 在单独窗口中添加新图书,在列表中增加一行,并进行编辑修改,这种方式适合属性较少的情况。 对于实际的应用系统,属性的数量可能很多,不能将所有的属性都显示在列表中。 在这种情况下,增加一行或对列表中的某一行进行修改都需要弹出单独的窗口。,31,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 开发GUI类AddBook,以便输入图书属性值。,32,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 此框架使用三行一列的GridLayout管理器。 最上部为标签,显示“学海书店”; 中间部分为书的属

7、性输入部分,为了使显示内容在框架的水平方向上居中,使用四行三列的GridLayout管理器,最后一列的内容为空; 框架的最下部为功能按钮区,可使用FlowLayout管理器。,33,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook方法从文本框中检索数据并使用检索的数据创建Book实例。,34,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,35,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,36,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,37,14.3 在单独

8、窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,38,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,39,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,40,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 更改图书管理界面中【增加】按钮的事件响应,取消原来的事件响应代码,并将下面的代码加到构造方法BookGUI()中。,41,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 在图书管理界面中点击【增加】按钮,就会弹出添加新图书窗口。如果再点击【增加】按钮,则又会弹出一个添加新图书窗口

9、。,42,14.3 在单独窗口中添加新图书,应用单例模式 单例模式是限制类实例只有一个对象的一种设计模式。 实现方法: (1) 修改现有构造方法访问权限public为private,从而防止外部程序直接调用构造方法实例化对象。,43,14.3 在单独窗口中添加新图书,应用单例模式 (2) 在类中加入静态方法,用于对外提供获取类实例的方法:,44,14.3 在单独窗口中添加新图书,应用单例模式 (3)图书管理界面中【增加】按钮的事件响应代码应修改如下:,45,14.3 在单独窗口中添加新图书,应用单例模式 对AddBook类中的shutDown()方法修改如下:,46,14.4 添加顾客,开发G

10、UI类AddCustomer 该类可用于向书店管理系统中添加新顾客。 介绍如何使用单选按钮RadioButton类和CardLayout布局管理器。,47,14.4 添加顾客,与顾客相关的类图,48,14.4 添加顾客,新增教师界面,49,14.4 添加顾客,新增学生界面,50,14.4 添加顾客,AddCustomer类的定义 初始定义如下:,51,14.4 添加顾客,AddCustomer类的定义 构造方法,52,14.4 添加顾客,AddCustomer类的定义 构造方法,53,14.4 添加顾客,AddCustomer类的定义 构造方法,54,14.4 添加顾客,AddCustomer

11、类的定义 构造方法,55,14.4 添加顾客,AddCustomer类的定义 构造方法,56,14.4 添加顾客,AddCustomer类的定义 增加事件响应,57,14.4 添加顾客,AddCustomer类的定义 增加clearForm()及shutDown()方法,58,14.4 添加顾客,AddCustomer类的定义 增加addCustomer()方法,59,14.4 添加顾客,AddCustomer类的定义 增加addTeacher()方法,60,14.4 添加顾客,AddCustomer类的定义 增加addStudent()方法,61,14.5 本章小结,本章继续实践了组合框、JTable组件、单选按钮及CardLayout布局管理器的使用。 在图书查询功能中,介绍了如何使用下拉选择框让用户选择查询方式,如何在Vector中查询符合条件的图书并显示在JTable组件上。 结合添加新图书的操作界面,介绍了单例模式的使用。 结合添加顾客界面,介绍了单选按钮及CardLayout布局管理器的使用。,62,Thanks!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1