您的位置:首页 > 编程语言

基于.NET平台的Windows编程实战(六)—— 题目管理功能的实现

2009-06-04 13:02 706 查看
申明:本系列课程是专为新手们写来入门练习用的,目的是想通过一个完整的问卷调查管理系统的案例开发来让新手们了解、加深或是熟悉软件项目的开发流程及在.NET平台上使用VS2005和C#进行Windows方面的编程;在整个课程的设计上,我尽量避开或是根本不讨论底层的以及性能优化等方面的东西,故高手完全可以无视本系列课程。今天下班回来前查看了下早上放出去的第五课的课程,看到一朋友的评论,说实话当时不好受,想想自己每晚写课程到深夜,竟然被人说成白痴文章!于是带着几分冲动草草的回复之后,便带着疑惑与思考回家了。刚才重新看了下昨晚写的第五课的课程,果真发现了不少“白痴”的地方:概念模糊,思路不明,无整体模型,杂乱无章……如此之文章,新手如何看懂?如何练习?……自责、自问、自思之后,我决定改变一下后面课程的写作方式,即先写设计思路[流程图],再动手实验并讲解一些相关的实现原理[挑几个比较有代表性的地方进行讲解],之后再把源码放出来供大家参考练习;这样,我想对新手来说应该会更加容易理解一些吧。当然,在这里要感谢一下那位发表评论的朋友,因为是他(她)提醒了我,并使我重新去思考整个课程的设计,在此我向这位朋友说声:谢谢!同时也希望他(她)以及更多的朋友能在以后的课程中提出更多的建议、指导以及批评^_^我将万分感谢!你们的支持是我最大的动力!好,题外话说了一大堆了,现在进入主题……
本课将带领大家一起来实现题目管理:添加、编辑、查看、删除、存入题库;以及题库管理:添加、编辑、查看、删除、插入到问卷等功能。
一、设计思路
我们知道:一份问卷是由若干条不同的题目组合而成的,而这些题目又是由用户一条一条添加进去的。那么我们来分析一下:假如需要对A区域做一份问卷调查试题,且这份问卷要求包含100条题目,于是我们通过系统[假设这个系统只具有添加/编辑/删除/预览问卷及添加题目的功能]创建好一份名为“A区域试题”的问卷,并向此问卷里输入添加了100条的题目;几天后,我们发现这份问卷有些地方做的不好,需要进行修改,于是我们为了方便操作,便给系统增加了题目编辑、检查[查看]、排序、删除等题目管理功能;再过了几天后,我们又需要对B区域及C区域各做一份包含100条试题的问卷,于是我们打开原来的系统,并创建了二份名为“B区域试题”与“C区域试题”的问卷,但当我们往里面添加题目的时候,我们发现三份问卷有许多相同或相似的题目,于是我们就会想:如果有一个题库能将这些相同或相似的题目存起来,那么当我们需要创建新的问卷的时候,我们直接从题库里面把题目插入进去不就可以了吗?多方便呀!于是我们就有了建立一个题库来存放题目的想法了,并且这个题目应该具有编辑、查看、插入到问卷、删除等功能……好,现在我们来设计一下流程图:
privatevoidTRichTitleText_MouseLeave(objectsender,EventArgse)
之后,我们再创建一个添加题目选项的窗口,使其命名为“TitleItemsAdd”,继承于“SurveyWin”母窗口,并设置成如下图6-3所示;
当我们点击图6-2中的“添加”题目按钮时,将会弹出一个提示框来询问用户是否需要马上给题目添加选项,如果用户选择“是”,则弹出本窗口以供用户添加该题目的选项,
反之,则返回主窗口。
[align=center]
privatevoidTSItemSubBtn_Click(objectsender,EventArgse)
privatevoidTSItemAddBtn_Click(objectsender,EventArgse)
[/align]
下面我们再看看排序功能的实现原理,先看看其实现的代码吧:
case"上升":case"下降":privatevoidTAToolScriptMenuItem_Click(objectsender,EventArgse)privatevoidTMaToolStripMenuItem_Click(objectsender,EventArgse)privatevoidTSToolStripMenuItem_Click(objectsender,EventArgse)
之后,我们再在工具栏的ItemClicked事件中补上如下代码,以便点击工具栏上的相应按钮时,也能出现相同的效果:
elseif(e.ClickedItem==TStorageToolStipBtn)TSToolStripMenuItem_Click(null,null);//题库管理elseif(e.ClickedItem==TMaToolScriptBtn)TMaToolStripMenuItem_Click(null,null);//题目管理elseif(e.ClickedItem==TAddToolScriptBtn)TAToolScriptMenuItem_Click(null,null);//添加题目
这样,就可以将所有的窗口与主窗口关联起来了,当我们点击“题目管理”时,就会出现如下图6-4所示的界面了:
图6-4
OK!本课程就先到这里吧,其余没有讲解的部分,如有不清楚的地方,可以在下面留言,我将尽力给予解答!谢谢大家的支持……
[align=left]
附:本课程源码下载
[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐