高级java实验GUI设计教材.docx

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实 验 报 告 课程名称 高级java程序设计 实验项目 实验 3 Java 高级 GUI 实验仪器 系 别 计算机学院 专 业 软件工程 班级/学号 实验日期 成 绩 指导教师 【实验名称】实验 3 Java 高级 GUI 【实验目标】 1、学习和掌握 JavaBeans 的基本实现方法和应用情形。 2、学习和掌握 MVC 模式以及实现方法。 3、学习和了解 Java 提供的各种容器、组件及其应用效果。 【实验日期和时间记录】 实验日期12月 【实验预习】 1、学习和掌握基本程序的结构和实现方法。 2、学习和掌握 JavaBeans 和 MVC 的基本概念和实现方法。 3、 在基本程序的基础上, 使用新的技术, 实现更复杂的程序 【实验过程及结果记录】 1、(信息面板 MessagePanel 触发事件 ActionEvent)在程序清单 15.7-.8 中(上册 P414-418,“15.9 实例学习:MessagePanel类”一节),信息面板类 MessagePanel 是 JPanel 类的一个类,它可以触发事件 MouseEvent、KeyEvent 和 ComponentEvent,但不能触发ActionEvent。修改 MessagePanel 类,使得单击它的实例时能够触发ActionEvent 事件。将新类命名为 MessagePanelWithActionEvent。使用一个 Applet 来测试该类,单击信息面板时在其中显示当前时间 实验结果: 2、 (修改 CircleController) 根据程序清单 35.1-35.4, CircleController 用文本域获取新的半径,用组合框获取表明圆是 否是实心的布尔值。在 CircleController 中加入一行,使用户可以 用 JColorChooser 组件选择颜色,如图 3.2 所示。新的行包括写有文本 Color 的标签,要显示颜色的标签和一个省略号按钮。用户可以通过单击省略号按钮来显示 JColorChooser 对话框。 一旦用户选择了颜色,颜色便显示在省略号按钮左边面板的背景上。 说明:程序实现的基本思路和方法。 (1)学习程序清单 35.1-35.4, MVC 程序的构造以及测试方法。 (2)对 CircleController(程序清单 35.3 P402)进行相应的 修改,包括:静态 GUI 的修改,增加颜色控制组件;动态事件处理 的修改,增加对颜色控制按钮的事件处理,弹出颜色选择对话框, 选择颜色,使用该颜色设置颜色标签,反映颜色变化。 (3)对 CircleController 进行修改, 在颜色控制按钮的事件 处理中, 使用控制器得到的用户颜色, 修改对应的 CircleModel 对 象的颜色属性设置。 (4)运行程序,启动用户测试程序 MVCDemo.java(程序清单 35.4,教材 P403),分别打开控制器和视图,观察控制器是如何控 制视图变化的。 实验结果 【实验总结】 对于自身薄弱的GUI知识有了进一步的理解,对于如何实现逻辑功能与界面结合有了自己的一套方法。并能利用javabeans和mvc解决一些问题。 【思考题的思考】 【思考题】 1、 JavaBeans 的基本结构要求有哪些?MessagePanel 是 JavaBeans 组件(类)吗?什么是源组件?MessagePanel 是源组件吗? JavaBeans 一定是源组件吗?反之,源组件一定是 JavaBeans 吗? JavaGUI 组件是 JavaBeans 吗?是源组件吗? 答:bean必须是公共类,尽管bean可能有其他的构造方法,但是必要时必须有一个公共的无参构造方法,bean必须实现java.io.Serializable,以确保其持续性。等等;不是;源组件包含用于检测引发事件外部或内部动作的代码。不是;不一定;不是;不是;不是; 2、如何创建一个自定义的源组件? 答:先定义事件接口——》检测事件——》通过调用向量中每个监听器的事件处理器来出发和处理事件 3、在练习 2 的 MVC 实现中,Controller 如何从用户获得信息、 修改 Model?Model 是如何将状态变化通知给 View? View 是如何根据 Model 变化来进行相应地显示的?这个 MVC 的起点在哪里? 答:j

文档评论(0)

舞林宝贝 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档