《界面层开发》PPT课件.ppt_第1页
《界面层开发》PPT课件.ppt_第2页
《界面层开发》PPT课件.ppt_第3页
《界面层开发》PPT课件.ppt_第4页
《界面层开发》PPT课件.ppt_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,第14章 界面层开发,编写GUI类查找图书 实现图书管理主界面 在单独窗口中添加新图书 添加顾客,2,14.1 编写GUI类查找图书,图书查询界面的框架使用BorderLayout布局管理器。,3,14.1 编写GUI类查找图书,“查询条件”右面使用组合框,组合框中设置三个选项:空、书名、作者。 可将选项放在字符串数组searchwaydata中,并以此为参数生成JComboBox组件。 使用searchWay.getSelectedIndex()方法就可以得到用户的选项。,4,14.1 编写GUI类查找图书,使用下面的代码生成数据表,初始时数据表为空。,5,14.1 编写GUI类查找图书,假设要查询的书事先存储在向量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类查找图书,定义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 实现图书管理主界面,为了突破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 实现图书管理主界面,点击【增加】按钮,系统在图书列表区增加一行,但最左一列显示的是“false”。,24,14.2 实现图书管理主界面,为了在最左列显示未选中的复选框,需要在MyTableModel类的定义中增加getColumnClass方法。,25,14.2 实现图书管理主界面,要对列表区中的数据进行编辑,还需要在MyTableModel类的定义中增加下面的两个方法:,26,14.2 实现图书管理主界面,修改按钮点击事件的响应,27,14.2 实现图书管理主界面,删除按钮点击事件的响应:删除某本书时要先选中前面的复选框,再单击删除按钮即可。如果没有选中任何行,则没有提示。,28,14.2 实现图书管理主界面,删除按钮点击事件的响应:改进,增加提示。,29,14.2 实现图书管理主界面,删除按钮点击事件的响应:改进,增加提示。,30,14.3 在单独窗口中添加新图书,在列表中增加一行,并进行编辑修改,这种方式适合属性较少的情况。 对于实际的应用系统,属性的数量可能很多,不能将所有的属性都显示在列表中。 在这种情况下,增加一行或对列表中的某一行进行修改都需要弹出单独的窗口。,31,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 开发GUI类AddBook,以便输入图书属性值。,32,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 此框架使用三行一列的GridLayout管理器。 最上部为标签,显示“学海书店”; 中间部分为书的属性输入部分,为了使显示内容在框架的水平方向上居中,使用四行三列的GridLayout管理器,最后一列的内容为空; 框架的最下部为功能按钮区,可使用FlowLayout管理器。,33,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook方法从文本框中检索数据并使用检索的数据创建Book实例。,34,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,35,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,36,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,37,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,38,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,39,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 addBook类定义,40,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 更改图书管理界面中【增加】按钮的事件响应,取消原来的事件响应代码,并将下面的代码加到构造方法BookGUI()中。,41,14.3 在单独窗口中添加新图书,创建添加新图书的操作界面 在图书管理界面中点击【增加】按钮,就会弹出添加新图书窗口。如果再点击【增加】按钮,则又会弹出一个添加新图书窗口。,42,14.3 在单独窗口中添加新图书,应用单例模式 单例模式是限制类实例只有一个对象的一种设计模式。 实现方法: (1) 修改现有构造方法访问权限public为private,从而防止外部程序直接调用构造方法实例化对象。,43,14.3 在单独窗口中添加新图书,应用单例模式 (2) 在类中加入静态方法,用于对外提供获取类实例的方法:,44,14.3 在单独窗口中添加新图书,应用单例模式 (3)图书管理界面中【增加】按钮的事件响应代码应修改如下:,45,14.3 在单独窗口中添加新图书,应用单例模式 对AddBook类中的shutDown()方法修改如下:,46,14.4 添加顾客,开发GUI类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类的定义 构造方法,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 本章小结,本章继续实践了组合框

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论