收藏 分享(赏)

基于Flash技术的动态博客设计——日历与动态日志设计.doc

上传人:wo7103235 文档编号:6264713 上传时间:2019-04-03 格式:DOC 页数:42 大小:1.33MB
下载 相关 举报
基于Flash技术的动态博客设计——日历与动态日志设计.doc_第1页
第1页 / 共42页
基于Flash技术的动态博客设计——日历与动态日志设计.doc_第2页
第2页 / 共42页
基于Flash技术的动态博客设计——日历与动态日志设计.doc_第3页
第3页 / 共42页
基于Flash技术的动态博客设计——日历与动态日志设计.doc_第4页
第4页 / 共42页
基于Flash技术的动态博客设计——日历与动态日志设计.doc_第5页
第5页 / 共42页
点击查看更多>>
资源描述

1、本 科 毕 业 论 文基于 Flash 技术的动态博客设计 日历与动态日志设计 The Design of Dynamic Blog Base on Flash TechnologyThe Design of Calendar and Dynamic Log姓 名: 学 号:学 院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 年 月摘 要博 客 以 其 丰 富 多 彩 的 个 性 化 展 示 而 被 广 泛 应 用 , 但 是 简 单 的 静 态 式 页 面无 法 满 足 发 布 者 与 欣 赏 者 的 要 求 。 将 博 客 以 Flash 的 形 式 展 示 将 带 来 一种强

2、有力的视觉冲击,就是本小组在此次毕业研究设计中要追寻的最终目标。日历几乎会在所有的博客中出现,但它在博客中总是游离于主体之外。与此同时,具有严谨时间轴设置的日志部分也是单独存在于博客当中,这样明显浪费了日历本身所能表现出的时间特性。此次毕业设计中,本人的目标就是将两者有效的结合起来,达到动态展示的效果。本次毕业设计论文包含 5 部分: 引言:引言包含了本次毕业设计的研究背景,运行环境设置以及对所要完成的日历模块进行介绍。这部分告知读者为什么选取这个研究方向,为什么选取 Flash 为实现工具以及此模块包含什么功能。 日历模块实现:说明完成日历部分可以使用的方案以及完成效果对比,进而选取最适合的

3、方案。详细阐述日历主体的制作以及事件提醒动态文本的实现,最后对完成部分进行不同的视觉效果展示。 动态日志实现:此部分告知读者视频剪辑形式的日志制作方式以及如何将日历与它连接起来,并对完成效果进行展示。这种连接方式的实现效果,就是本小组所提倡的新的浏览方式。 与整站的整合:此部分告知读者在模块完成后如何与整站进行整合,以及在整合中出现的问题以及解决方法。 结论:这部分包含对本次毕业设计完成情况的判断,完成过程中带给笔者的心得体会,今后需要完善的地方以及对博客前景的展望。关键词:Flash;日历;日志AbstractBlog has been widely used for its colorfu

4、l display of the personalization, but a simple static page can not met the appreciation of the publishers request. By using Flash in Blog will bring a strong visual impact. This is the ultimate goal of our group.Basically, the calendar appears all there in a blog. It is Obviously that the existing c

5、alendar of blog is drifted away from the main outside. Logs in the blog which have a strict timeline are often stand alone, so the calendar itself can be a waste of time to show properties. To effectively combine the two to achieve the effect of dynamic display, the paper contains 5 parts: Introduct

6、ion: Introduction includes the design of the graduate research background, as well as the runtime environment set to be completed by the introduction of the calendar module. This part of the election is to inform the reader why we choose this direction of the study, why we select Flash and what I ne

7、ed to complete in the module contains functions. Calendar Module: This part shows what Methods can be used to complete the program and their effectcomparisons to determine the most suitable program to select. Followed in detail, as well as the production of the main calendar events to remind the rea

8、lization of dynamic text. Finally, the completion of different parts of the display of visual effects. Calendar Log to Achieve: To inform readers that this part of the log form of video clips as well as how to create a calendar with it and linking it to complete the effect and display. The realizati

9、on of this connection the effect of this group is to promote new ways to browse. Integration Points with the whole: This part shows readers how to integrate the entire station, as well as the integration problems and solutions. Conclusion: This section contains the judge of the completion , the proc

10、ess of the experiences during finishing this design, the need for improvement and the outlook of blog.Key Words: Flash;Calendar;Log目录第一章 引言 11.1研究背景 .11.2实现环境选择 .21.3日历模块介绍 .3第二章 日历模块实现 .52.1设计日历主体方式选择 .52.1.1 调用组件方式 .52.1.2 元件组合方式 .92.2 日历主体实现方法 102.2.1 Date Box 设计 .102.2.2 Day Box 设计 .122.2.3 Back

11、ground 设计 142.2.4 Event Clendar 设计 .142.3 事件提示 textbox 设计 182.4 日历实现效果以及对比 20第三章 动态日志实现: .243.1 日志页面设计 243.2 日志与日历的交互 253.3 日志实现效果 273.4 不足的地方 29第四章 整站整合 .304.1 整合的实现 304.2 出现问题以及解决方法 30第五章 总结 315.1 结论 315.2 心得体会 325.3 展望 32ContentsChapter 1 Introduction 11.1 Background.11.2 Environment Settings.21.

12、3 Calendar Module Introduction.3Chapter 2 Calendar Module52.1 Methods of Calendar Design52.1.1 Call Component Method 52.1.2 Assemble Component Method92.2 Calendar Design .102.2.1 Date Box Design.102.2.2 Day Box Design122.2.3 Background Design.142.2.4 Event Clendar Design142.3 Events Textbox Design .

13、182.4 Effect And Contrast .20Chapter 3 Dynamic Log Design.243.1 Log Design243.2 Log Interactive Calendar253.3 Effect and Contrast.273.4 For Improvement.29Chapter 4 Integration With Overall.304.1 Realization of Integration304.2 Problems and Solutions30Chapter 5 Summary315.1 Conclusion315.2 Experience

14、325.3 Outlook.32厦门大学本科毕业论文1第一章 引言1.1 研究背景在确立了此次毕业设计的研究方向后,本小组对网络文化中有广泛应用性以及良好发展趋势的各个方面进行了深入的研究与调查。而作为进 10 余年来网络文化新生事物中最为重要的一员-BLOG 也就进入了本小组的视线。毫无疑问的说,博客是 web2.0 时代最重要的组成部分之一,在其新生之初,没有人想象的到它的影响力会发展的如此迅速。 从 2000 年开始,博客成千上万涌现,并成为一个热门概念。在博客发展史上,911 事件是一个重要的时刻。正是这场恐怖的袭击,使人们对于生命的脆弱、人与人沟通的重要、最即时最有效的信息传递方式,

15、有了全新的认识。一个重要的博客门类:战争博客(WarBlog)因此繁荣起来,可以说对 911 事件最真实最生动的描述不在纽约时报,而在那些幸存者的博客日志中;对事情最深刻的反思与讨论,也不是出自哪一个著名记者手中,而是在诸多的普通博客当中1 。正是从此刻开始,博客的风靡全球已经成为必然趋势。在现实生活中这个人接触的范围是及其有限的。在社会学中有一个 150 法则统计,人在接触其他人最大的上线大概在 150 人左右,经常接触这些人群的数量是及其有限的。但在博客世界中接触的范围从理论上讲几乎是无限的。在现实生活中人接触的有家庭、单位、学校和其他组织的。它对个人的社会意义是什么呢?可以积累一些个人的

16、关系,满足一些个人的需求,实现一些个人的成就。博客世界相对于现实世界来讲,就有了一个进一步提升的空间。随着这种发展,博客进而升华为一种艺术。简单的时间轴式的日志排列以及仅对背景进行变换的“朴素”博客形式已经不能满足用户的需求。既然出现了这种需求,而它所追求的方面与本小组的研究方向匹配。与此同时,对博客浏览方式的改造对于本小组来说也是一个相当有挑战性的项目。经过我们小组的讨论,最终决定将本次毕业研究的方向设定为实现更丰富多彩,带给人更高视觉冲击,拥有新的浏览方式的博客展示样式。厦门大学本科毕业论文21.2 实现环境的选择本次设计的主体是网页,形式是博客。这样就带来了一个新的难题,本次设计应当选取

17、何种工具进行实现呢?提到网页设计,自然会让人想起大名鼎鼎的网页制作三剑客-Dreamweaver,Flash,Fireworks。本小组在对相关资料经行研究后发现:Dreamweaver 可 以 用 最 快 速 的 方 式 将 Fireworks, FreeHand, 或Photoshop 等 档 案 移 至 网 页 上 。 使 用 检 色 吸 管 工 具 选 择 荧 幕 上 的 颜 色 可 设 定最 接 近 的 网 页 安 全 色 。 对 于 选 单 , 快 捷 键 与 格 式 控 制 , 都 只 要 一 个 简 单 步 骤便 可 完 成 。 它 使 用 网 站 地 图 可 以 快 速 制

18、作 网 站 雏 形 、 设 计 、 更 新 和 重 组 网页 。 它 是 唯 一 提 供 Roundtrip HTML、 视 觉 化 编 辑 与 原 始 码 编 辑 同 步 的 设 计工 具 。 但 是 , Dreamweaver 难 以 精 确 达 到 与 浏 览 器 完 全 一 致 的 显 示 效 果 。 而 它 的 页 面 原 始 代 码 也 难 以 控 制 。 综 合 而 言 , Dreamweaver 是 一 款 擅 长 将图片/动画等元素组装成网页的网络制作软件。Flash 是 一 种 创 作 工 具 , 设 计 人 员 和 开 发 人 员 可 使 用 它 来 创 建 演 示 文

19、稿 、应 用 程 序 和 其 它 允 许 用 户 交 互 的 内 容 。 Flash 可 以 包 含 简 单 的 动 画 、 视 频 内容 、 复 杂 演 示 文 稿 和 应 用 程 序 以 及 介 于 它 们 之 间 的 任 何 内 容 。 通 常 , 使 用 Flash 创 作 的 各 个 内 容 单 元 称 为 应 用 程 序 , 即 使 它 们 可 能 只 是 很 简 单 的 动 画 。您 也 可 以 通 过 添 加 图 片 、 声 音 、 视 频 和 特 殊 效 果 , 构 建 包 含 丰 富 媒 体 的 Flash 应 用 程 序 。 Flash 特 别 适 用 于 创 建 通 过

20、 Internet 提 供 的 内 容 , 因 为它 的 文 件 非 常 小 。 Flash 是 通 过 广 泛 使 用 矢 量 图 形 做 到 这 一 点 的 。 与 位 图 图形 相 比 , 矢 量 图 形 需 要 的 内 存 和 存 储 空 间 小 很 多 , 因 为 它 们 是 以 数 学 公 式 而不 是 大 型 数 据 集 来 表 示 的 。 位 图 图 形 之 所 以 更 大 , 是 因 为 图 像 中 的 每 个 像 素都 需 要 一 组 单 独 的 数 据 来 表 示 。 综 合 而 言 , FLASH 适 用 于 动画制作,矢量流媒体动画以及交互应用等等。Fireworks

21、 可 以 加 速 WEB 的 设 计 与 开 发 , 它 创 建 和 编 辑 矢 量 图 像 与 位 图图 像 , 并 导 入 和 编 辑 本 机 Photoshop 和 Illustrator 文 件 ; 采 用 预 览 、跨 平 台 灰 度 系 统 预 览 、 选 择 性 JPEG 压 缩 和 大 量 导 出 控 件 , 针 对 各 种 交 付 情厦门大学本科毕业论文3况 优 化 图 像 ; 它 使 网 站 和 各 种 Internet 应 用 程 序 构 建 交 互 式 布 局 原 型 。 将 网 站 原 型 导 出 至 Adobe Dreamweaver, 将 RIA 原 型 导 出

22、至 Adobe Flex; 它 使 用 新 的 页 面 板 在 单 个 文 档 (PNG 文 件 ) 中 创 建 多 个 页 面 , 并 在多 个 页 面 之 间 共 享 图 层 。 每 个 页 面 都 可 以 包 含 自 己 的 切 片 、 图 层 、 帧 、 动画 、 画 布 设 置 , 因 而 可 在 原 型 中 方 便 地 模 拟 网 站 流 程 。 综 合 而 言 ,fireworks 是 一 款 适 用 于 设计/制作图片的网页制作软件。经过以上介绍,不难发现本小组所要求的,是技术在视觉上的一种展示,而这种视觉展示又将服务于功能的实现。这其中包含着大量的交互式矢量多媒体开发技术。F

23、lash 动画支持矢量图形和流式传输。从简单的动画到复杂的交互式 Web 应用程序,flash 可以创建任何作品。通过添加图片、声音和视频,可以使 Flash 应用程序媒体丰富多彩。Flash 提供了创建和发布丰富的 Web 内容和强大的应用程序所需的所有功能。不管是设计动画还是构建数据驱动的应用程序,Flash 都提供了创作出色作品和为使用不同平台和设备的用户提供最佳体验的工具。通过以上的研究,本小组决定:使用 Flash CS3.0 为此次设计的实现环境。1.3 日历模块介绍经过小组讨论以及任务分配,本人所要完成的部分是日历的展示以及非跳转日志页面。纵观流传在网络上的博客,浏览著名的博客网

24、站,不难发现在大部分的博客中都有日历的存在。这样是否说明本次研究对日历的展示是一种随大流的毫无任何创新的行为呢?事实并非如此。在通过对网络上的博客进行观察后发现:包含日历的博客样式中,日历总是作为一个单独的部分游离在主体边缘。绝大部分的日历模块仅仅是提供了一个万年历的功能,只有少部分人意识到了日历本身就是一个二维的时间轴。日志是一种基于时间轴的文字产物,而在绝大部分现有的博客中,日志是依附在单独的时间线性轴上,这就是本次设计要做出厦门大学本科毕业论文4突破的地方。正因为如此,一个新的想法诞生了-如果将日志与日历结合,就会避免日历独立于主题之外,也避免了日历时间轴的重复。更重要的是,这样提供出一

25、种新的日志浏览方式,在视觉上也拥有了极大的冲击力。这是一种新的博客浏览形式,这也是本次毕业设计中日历模块与大众博客不同的创新之处。在此次设计的日历模块中,本人所要实现的包括:日历的主体;调用 XML文件进行事件提醒的 textbox;日历不同外形的变化;日历与日志无跳转连接等。厦门大学本科毕业论文52 第二章 日历模块实现2.1 设计日历主体方式选择既然决定了使用 FLASH 软件进行日历模块的编写,自然而然就将面对一个新的问题-应用何种方式进行日历的实现。总体而言,使用 FLASH 软件进行日历的编写主要包括两种方式-调用组件方式以及元件组合方式。对两者实现以及展示效果的不同,本人将进行如下

26、说明。2.1.1 调用组件方式Adobe 公司为了使用者的方便,在 Flash AS 中建立了大量的组件供使用者调用。ActionScript2.0 包含了很多实用组件,其中就包括 datechooser 组件,用于任何想让用户选择日期的场合。它的建立如下图显示:新建 FLASH ActionScript2.0 项目,点选窗口中的组件选项,出现如图 2-1 所示页面。厦门大学本科毕业论文6图 2-1 Flash 中组件调用窗口在组件框出现后,选择 User Interface 中的 DateChooser 组件并拉入图层区,如图 2-2 所示。图 2-2 原始日历组件效果这样最基本的日历就出现

27、了。ActionScript2.0 提供了相当多的属性供使用者进行外形的修饰,包括(只选取部分进行说明):厦门大学本科毕业论文7themeColor:用于变换图像和所选日期的发亮的颜色。可能的值包“haloGreen“、“haloBlue“ 和 “haloOrange“。默认值为“haloGreen“。backgroundColor:背景色。默认值为 0xEFEBEF(浅灰)。headerColor:组件标题的背景色。默认颜色为白色。borderColor:边框颜色。默认值为 0x919999。DateChooser 组件使用纯色单像素线作为其边框。此边框不能通过样式或外观进行修改。rollO

28、verColor:滑过的日期的背景颜色。“光晕“主题的默认值为 0xE3FFD6(亮绿),“范例“主题的默认值为 0xAAAAAA(浅灰)。selectionColor:选定日期的背景颜色。“光晕“主题的默认值为 0xCDFFC1(浅绿),“范例“主题的默认值为 0xEEEEEE(极浅灰)。在 Datechooser 组件所在图层第一帧右键选取动作,输入:_global.styles.HeaderDateText.setStyle(“color“, 0x660000);_global.styles.WeekDayStyle.setStyle(“color“, 0x660000);这样就改变了组

29、件月份以及星期几的颜色至深红,如图 2-3 所示。厦门大学本科毕业论文8图 2-3 代码实现组件日历外形改变对日历组件本身的属性修改,如图 2-4 显示。图 2-4 组件日历属性修改完成了日历外观的修改后,在图层中选取“文件”-“导入”-“导入到舞台” ,把所需的背景导入图层中,并右键设置为最底层。鼠标左键选取 Datechooser 组件,右键转化为元件,位置设置为居中,如图 2-5 所示。图 2-5 组件日历转化成元件厦门大学本科毕业论文9接着在属性中将元件选择成 ALPHA 改变透明度到 50%,以达到在填充背景后,不会出现突兀的遮蔽效果。值得注意的是,只有在将组件转化成图形元件后,才能

30、直接进行透明度的修改,如图 2-6 所示。图 2-6 组件日历修改透明度这样,组件调用式的日历就完成了。按 Ctrl+Enter 显示效果,如图 2-7 所示。厦门大学本科毕业论文10图 2-7 调用组件日历的预览效果组件调用形式存在很大的问题,日历的展示效果太过单调,同时无法进行更深入的修改。这种方式制作的日历页面在建立鼠标触发事件时,无法有效的转接到日志页面,组件本身的行为控制会对跳转造成很大的困扰。在经过谨慎的研究后决定,在本次毕业设计中不使用此种方法编写日历页面。2.1.2 元件组合方式在明确组件调用形式的不适用后,使用元件组合完成日历这也就成为了最恰当的选择。总体而言,日历包含三个框

31、架:整体框架-包含年月的转换以及箭头的选择;每日框架-包含每天的内容以及对应每日背景;星期一到星期日框架-包含星期一到星期日的内容以及对应背景。具体实现方法将在下一节进行详细论述。厦门大学本科毕业论文112.2 日历主体实现方法建立新的图层,命名为 calendar,这就是日历主体存在的图层。建立三种子元件:Date Box,Day Box 与 Background,将三者在 Event Calendar 元件中进行组合成为日历主体。2.2.1 Date Box 设计Date Box 对应的是每日的框架及内容,这其中又包括另通用背景元件 Date Box Background。Date Box

32、 元件实际包含三层,即用来读取日期对应数字的 textbox,用于背景组合的图片以及最底层确定大小的框架。选择“插入”- “建立新元件” ,定义为新的视频剪辑,命名为 Date Box。进入 Date Box 的编辑页面,如图 2-8 所示。图 2-8 Date Box 编辑页面中间的十字准星即为调用元件时对应图层显示的相对坐标原点。首先进行的是最底层框架的建立。为了方便于页面修改,本人将此框架独立建立成一个元件进行直接调用。新建一个元件,定义为视频剪辑,命名为 Date Box Background 并放置到此到场景中,右键点击进行编辑。在此元件框架中建立 3 个图层,分别命名为labels

33、,actions,bg(背景) 。在 labels 图层拖入可调用组件中的 label,并厦门大学本科毕业论文12将其在时间轴上设置为 3 个阶段:1 到 9 帧对应 normal 状态,即每月中可选的每一天;10 到 19 帧对应 active 状态,即打开日历对应的当天;20 到 26 帧对应 disabled 状态,即日历中不属于这个月不可用天(例如显示在此月第一天但对应上个月的 31 号) 。与此同时,在 bg 图层对对应的 3 中状态添加背景。Normal 状态对应无色,active 状态对应深蓝色,disabled 状态对应灰色。如图 2-9 所示。图 2-9 Date Box B

34、ackground 的建立在这里建立的 Date Box Background 元件是可以直接调用的,所以在对其他部分元件进行建立并需要应用到设定背景框大小时,都可以直接调用此元件。返回到元件 Date Box,将包含 Date Box Background 的图层重命名为box,进而在其上新建 2 个图层,分别命名为 text 和 actions。在 text 图层中加入动态文本 date_txt。在此 date_txt 中将直接经行对时间日期的调用。在动态文本与背景框架中间包含的是日历每日框的背景,放置在两者中间的原因是这样既不会造成对日期数字的遮蔽,也能很好的遮盖大小框架的边缘。如图2-

35、10 所示。厦门大学本科毕业论文13图 2-10 Date Box 元件的三层组成将 3 者整合成一个整体,设置为相同的大小。元件 Date Box 的基本构成就结束了。2.2.2 Day Box 设计Day Box 元件对应的是星期一到星期日的框体。它建立的方法与 Date Box类似,同样包含三层。建立新的元件,定义为“视频剪辑” ,命名为 Day Box,进入编辑画面。如图 2-11 所示。厦门大学本科毕业论文14图 2-11 Day Box 编辑页面建立 3 个图层,分别命名 box,text,actions。由于使用的背景框架是可以通用的,所以在 box 图层插入元件 Date Bo

36、x Background 用作背景框架大小。在 text 图层插入动态文 day_txt,在场景中导入星期对应的背景图案。如图 2-12 所示。图 2-12 Day Box 组件组成将 3 者叠加成一体,注意把动态文本右键设置成顶层防止被遮蔽,显示的效果如图 2-13 所示。厦门大学本科毕业论文15图 2-13 Day Box 完成效果在 actions 图层的第一帧右键选取动作,加入代码用于动态文本调用星期几对应英文,在这里 Day Box 元件完成。2.2.3 Background 设计此元件应用于整体日历的大小,其组成就是可调用的组件 label。直接将可调用组件中的 label 拉入场

37、景中。2.2.4 Event Clendar 设计此元件是将以上三个元件进行组合并赋予其日历主体的功能(包含对事件的判定) 。建立新的视频剪辑,命名为 Event Clendar。将相关元件进行组合,组合的思路为:先将整体背景 Background 调入,完成其日历转换月份的功能;进而将 Day Box 对应的星期一到星期日框放置在Background 之上;最后将 Date Box 对应的每日框组合并放置在 Background 之上。厦门大学本科毕业论文16首先需要建立的是转换月份所需要用到的箭头效果。因为实质上是正反两个箭头对月份进行转换,所以需要将箭头制作成元件形式以方便调用并确保不会

38、出现反向问题,具体实现如图 2-14 所示。图 2-14 箭头的实现紧接着,在 Background 的左上方调入反向的 Arrow 元件,在它的右上方调入正向的 Arrow 元件。以 Arrow 的高度为高,进行相关变化。在以整个Background 元件宽度为宽,Arrow 的高度为高的长方形区域内,以中点为界。arrows.attachMovie(“sparkHitArea“,“leftHitArea_mc“,1);arrows.attachMovie(“sparkHitArea“,“rightHitArea_mc“,2);建立两个相关视频剪辑区域,分别建立触发事件。当点击左上方区域时,

39、读取上个月;当点击右上方区域时,读取下个月。在完成这些后,在此区域的中点位置建立文本区域,读取对应月份及年份。效果如图 2-15 所示。图 2-15 月份转变实现效果厦门大学本科毕业论文17在完成了日历主体头部的构成后,需要的是建立星期一到星期日的所属框架组合。在 Background 元件中左方反向箭头的下方确定 Day Box 相关坐标原点,将 Day Box 循环放置七个,对应七个 day_txt。在这七个动态文本中循环读取星期对应英文。this.daysOfWeek_array= “Sunday“,“Monday“,“Tuesday“,“Wednesday“,“Thursday“,“F

40、riday“,“Saturday“;这样就实现了星期一到星期日的排列,实现效果如图 2-16 所示。图 2-16 星期显示效果接下来需要完成的就是每日框架的排列。实现这一部分的难点在于如何对应每月正确的调用日期数。这里提示出了一个数据的重要性起至日期。本次毕业设计中将日历的起止日期写于 XML 文件中,在读取了 XML 文件中的起始日期后,通过函数判断此起始日期对应年份月份中的位置,并将其在起始位置的文本框中输出。接着以此为基准点对每个月的日期进行顺序排列并从文本框中顺序输出。值得注意的是在判定为闰年时会在二月多输出一天。如同 Day Box 一样,Date Box 被七个一循环放置于以 Da

41、y Box 下方为坐标原点的区域内。由于每个单独天最多可以存在于 5 个星期中,所以 Date Box 在伴随月份日期数顺序排列时,最多可以出现五行。这里就应用到了 Date Box Background 相关不同日期属性的背景设置。月份中每个有效日将设置为白色背景,属于上个或下个月的日设置为灰色背景,对应当天以深蓝色为背景。具体组合效果如图 2-17 所示。厦门大学本科毕业论文18图 2-17 日历主体完成效果完成日历主体并不代表着 Event Calendar 元件的完成。需要进一步对每天可能包含事件进行相关属性定义。总体而言,事件将分为三种状态:“once”代表此事件仅仅发生一次,这是最

42、基本的事件定义。“weekly”代表事件将在每周的对应天发生。相对于“once”而言,本事件属性包含一个发生次数定义,用来决定事件出现的次数。“monthly”是最为复杂的定义,实质上的每月发生事件包含两种可能。即每个月的某一天发生重复事件和每月中确定几日发生事件,并重复发生持续出现在接下来几个月中。为了更好的处理定义为“monthly”的事件,将月份中的每一天定义为三种状态:day,weekday 与 weekendday。这样可以明确的区分事件发生的日期判定,并将其以附加属性的形式写入事件中,可以有效避免事件发生的歧义理解。厦门大学本科毕业论文19至此,日历主体完成,Event Calen

43、dar 元件组成完成。2.3 事件提示 textbox 设计仅仅完成日历的主体并不能满足本次毕业设计的需求。本人将完成从 XML文件读取事件并在 Textbox 中即时输出的事件提醒功能。在完成这个功能之前,首先需要注意的是事件的输入格式。如图 2-18 所示。图 2-18 事件输入格式正如图 2-18 所示,为了尽可能简便的写入事件,并考虑到中国人的输入习惯,所有的日期以“年-月-日-小时-分钟-秒”的样式写入。在经行事件输出时,输出的内容包括具体日期,标题,发生属性,起至日期与内容。在输出事件日期时,使用 substr 函数判定输入。通过不同的判定,允许如下输入:年:允许四位与二位时间输入

44、。例:1999 或 99月:为了满足格式的对其,允许一到四位全部输入。例:2,02,002 或0002日:为了满足格式的对其,允许一到四位全部输入。例:6,16,026 或0016小时:允许一到二位输入。例:3 或 15厦门大学本科毕业论文20分钟:允许一到二位输入。例:8 或 45秒:允许一到二位输入。例:7 或 37需要注意的是在读取小时数时,包含对 am 与 pm 的判定。在完成了对日期的读取并输出后,对标题进行输出。进而需要的是对应事件不同属性进行输出判定。从上文中可以清楚的发现事件拥有三种不懂的属性:once,weekly 与monthly。在判定为 once 时,事件提醒变的相当简

45、单,只需要对事件内容进行输出就可以完成功能。在判定为 weekly 时,如表 1 所示。表 1 weekly 事件输出对应日期 输出Monday Every week on Monday/ weekdaysTuesday Every week on Tuesday/ weekdaysWednesday Every week on Wednesday/ weekdaysThursday Every week on Thursday/ weekdaysFriday Every week on Friday/ weekdaysSaturday Every week on Saturday/weeke

46、ndsSunday Every week on Sunday/weekends在判定为 monthly 时,通过设定的三种属性day,weekday 和weekendday 来进行区别。当事件发生在每月中特定天数并持续发生几个星期甚至几个月时,对事件进行统计。由于在每个星期中最多出现五个星期,所以事件同月中重复发生最多五次。通过 d.pattern.attributes.recur 进行发生次数的判定,可以很好的解决输出厦门大学本科毕业论文21问题。完成以上事件输出并不完善。在判定无事件发生时,输出:This day has no events and this event was trigg

47、ered by the onSelectDate event至此,事件即时提醒功能完成。2.4 日历实现效果以及对比需要提醒的是,在建立 Day Box 与 Date Box 时,不同的背景组合会造成不同的效果。在本次设计中,为了与整站进行更好的整合,本人对日历进行了大量的修改,完成了几种不同背景组合而成的日历页面。这些将在下面进行展示。没有添加背景时,无事件日期显示的效果如图 2-19 所示厦门大学本科毕业论文22图 2-19 无事件无背景日历效果没有添加背景时,有事件日期显示的效果如图 2-20 所示。图 2-20 有事件无背景日历效果厦门大学本科毕业论文23组合显示成羊皮纸时,无事件日期

48、显示的效果如图 2-21 所示。图 2-21 羊皮纸效果日历组合成仿 iphone 手机的日历显示效果如图 2-22 所示。图 2-22 iphone 手机日历效果厦门大学本科毕业论文24最终进行整合时选定的日历显示效果如图 2-23 所示。图 2-23 最终整合日历效果显而易见的,与调用组件形式的日历效果相比,元件组合形式的日历拥有更高的观赏性,虽然在实现上复杂了许多,但也完成了组件形式所没法实现的功能-即时事件提醒。事实证明,应用元件组合进行日历的设计,更适合于本次毕业设计的要求。厦门大学本科毕业论文253 第三章 动态日志实现3.1 日志页面设计要完成无跳转的日志展示形式,首先要完成日志页面的设计。在进行日志的创建时,最重要一点是日志应该以视频剪辑的形式出现。其原因是为了更好的与整站进行整合,同时因为格式的相同而可以随意调用。日志的实现方法如下:新建一个 FLASH Actionscript3.0,命名为 loadjpg.fla。建立两个图层,分别命名为 loadjpgMC 与 as。Loadjpg 图层用于实现渐变出现的动画效果,as图层用于对日志图片的调用。选取日志一天的内容以图片的形式输出,效果如图 3-1 所示。

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

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报