华中农业大学本科毕业论文(或设计)
图 12 放大图片浏览界面
Fig. 12 Enlarged picture browsing interface
图 13 缩小图片浏览界面
Fig. 13 Minified the image brower interface
21
华中农业大学本科毕业论文(或设计)
图 14 图片旋转角度浏览界面
Fig. 14 Image rotation angle browsing interface
3.2.3 电子相册结构设计
如图15所示,图片列表界面为电子相册的入口和出口。通过图片列表功能菜单,可执行打开图片进行浏览的功能和删除图片的功能,并根据所选择的功能进入图片浏览界面或显示删除文件提示框。进入图片浏览界面可通过图片浏览功能菜单,对当前显示的图片执行各种操作,从而进入相应的图片浏览界面。放大图片的显示,缩小图片的显示,旋转图片的显示,图片全屏的显示和自动浏览图片的显示均将显示在图片浏览界面。而各种模式下的图片浏览界面下,均可以通过功能菜单对其他浏览模式进行选择。
图片列表功能选择删除图片图片逆时针旋转打开图片功能选择图片顺时针旋转正常显示图片全屏显示图片自动浏览图片放大显示图片缩小显示图片 图 15 电子相册结构图 Fig. 15 Album structural diagram
22
华中农业大学本科毕业论文(或设计)
4 算法设计和实现
4.1 记事本主要算法设计和实现
4.1.1 记事本类结构设计
NpMytexteditNpMessageboxNpNotepadFormNpSaveFormNpOpennoteFormNpFunctionviewFormNpNewnoteFormNpOpenoptionFormNpDeleteNoteFormNpNewoptionFormMyKeyboardMyKey
图 16 记事本类图 Fig. 16 Notepad class diagram
类图说明:
NpNotepadForm为记事本程序的主界面类,即显示文件列表的类。NpFunctionviewForm为功能菜单的基类,也是文件列表功能菜单的实现类。NpNewnoteForm为新建文件的功能实现类。NpOpennoteForm为打开文件的功能实现类。NpDeletenoteForm为删除文件的功能实现类。NpNewoptionForm为新建文件功能菜单的实现类。NpOpenoptionForm为打开文件功能菜单的实现类。NpSaveForm为文件名保存实现类。NpMessagebox为内容修改提示框的功能实现类。MyKey是软键盘上的按钮的实现类,MyKeyboard为软键盘功能实现类。MyTextedit是Qt类中QTextEdit类的子类,实现键盘响应函数功能的权限升级,即从protected升级为public。
NpNotepadForm与NpfunctionviewForm成单项关联关系。
NpFunctionviewForm分别与NpNewnoteForm、NpOpennoteForm、NpDeletenoteForm成单向关联。
23
华中农业大学本科毕业论文(或设计)
NpNewnoteForm与NpNewoptionForm单项关联。 NpOpennoteForm与NpOpenoptionForm双向关联。
NpOpenoptionForm与NpDeletenoteForm、MyKeyboard分别为单向关联。 NpNewnoteForm分别与NpOpennoteForm和MyKeyboard单向关联。 NpOpenoptionForm和NpNewoptionForm继承于类NpFunctionviewForm。 MyKeyboard依赖于MyKey,若MyKey类发生改变MyKeyboard也将发生改变。
MyTextedit与NpNewnoteForm类和NpOpennoteForm为聚合(聚集)关系。 NpSaveForm与NpNewnoteForm为聚合(聚集)关系。 NpMessagebox与NpOpennoteForm是聚合(聚集)关系。
4.1.2 记事本功能实现
记事本界面用到的控件主要有QLable、QToolButton、QTextEdit和QListBox等。
(1) 记事本文件列表的实现:首先扫描文件夹下的所有文件,包括隐藏的所有文件名,过滤记事本文件,并将这些记事本文件名根据创建时间的先后进行排序存储到文件链表中,将文件链表中的所有文件显示在文件列表界面。流程图如图17。
(2) 功能菜单的实现:在记事本设计中有3个功能菜单界面,其中打开和新建的功能菜单均继承自记事本文件列表界面的功能菜单,这三个界面都含有一个QListBox控件,但是菜单项不同,并根据不同的菜单项实现不同的功能。流程图如图18。
(3) 新建文件的实现:首先提示输入文件名,并检查文件名的合法性。如果文件名不符合要求,则设置文件名的输入无效,并提示重新输入。如果不输入文件名则提供默认的文件名,进入文本编辑界面,然后按照界面的宽度对文本输入进行限定,到界面宽度最大值时自动换行。并且使文本保存时输入到物理设备上时支持unicode编码。流程图如图19。
24
华中农业大学本科毕业论文(或设计)
开始扫描文件目录下所有文件包括隐藏文件对目录下文件按建立时间进行排序检查目录下是否有记事本文件Yes将所有记事本文件名存入链表建立文件列表迭代器按照文件名链表中文件的顺序显示文件名列表在列表显示界面上No设定文件列表中默认选择项结束
图 17 显示文件列表流程图 Fig. 17 File list showing flow diagram
开始显示菜单项Switch(选择菜单项)新建关闭父窗口蒙版新建文件功能实现打开关闭父窗口蒙版打开文件功能实现删除关闭父窗口蒙版删除文件功能实现软键盘关闭父窗口蒙版软键盘功能实现退出关闭父窗口蒙版返回文件列表结束图 18 功能菜单流程图 Fig. 18 Function menu flow diagram
25
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库毕业设计(论文)-基于QT的嵌入式终端应用程序开发--记事本和电(5)在线全文阅读。
相关推荐: