一般情况教师想出一份试卷,要么到庞大的题库里一道一道的把题找出来,或是从几本相关的书里把题一道一道挑出来。这样即费时又费力,而且很难保证试题的覆盖面和把握好试卷的难度。正是为了能够帮助教师轻松的出一份高质量的试卷而开发了本软件。为了达到预期的目标我们最终选择了Microsoft Office
Word做为本软件的终端输出。本软件是在对现有控件的改进和VBA编程的研究的基础上开发的。本软件实现了以下主要功能:1.手动生成试卷;2.自动生成试卷;3.抽取现有试卷;4.用户管理;5.数据库管理。大量的测试表明本软件在Windows
98/me/2000/XP平台配合Office XP/2003
的环境下程序运行稳定且各项功能运行得都很正确,基本达到了预期的要求!!
结论:经过老师的实际试用本软件在界面上和功能上都有独到之处!!相信完全可以胜任出一份好的试卷任务。
The
general situation teacher thinks out a paper,reach huge exam pool each finds out the question, or
shoulder the question together out from several relevant
books. Time-consuming
and also strenuous like this, and very difficult to guarantee
coverage rate and paper degree of difficulty of examination
question.。。。。。。。。。。。。。。。。。。。。。。。。。
Key Words:Exam,Problem pool,VBA,word |
在开发本软件之前,正是我努力提高自己的Delphi开发水平的时期。因此我选择了Delphi做为我的开发工具,然而这次开发的软件和以前不一样。最主要的区别在于这个软件要以Microsoft Office
Word做为试卷的终端输出。而它们又是两个不同公司的产品。因而,刚一开始我特别担心这个技术能否得到比较圆满的解决。在开发的过程中我不断的对VBA技术进行研究,并且将它应用于这次的软件开发中。因而比较好的解决了Microsoft Office Word的接口编程问题。还有一个比较棘手的问题就是Delphi提供的控件都是很基本的,而这次开发中要用到一个可以标记选中状态的树型控件,在对Delphi的TtreeView的深入研究后确认它不能胜任这个任务。因此,我开始寻找第三方控件,然而这一次我很失望因为只找到了一个2000年编写的TCheckTree控件,没办法了,最后下定决心修改那个TCheckTree控件以使它能更加稳定和实用。在深入研究Windows的消息机制和VCL框架对Windows消息机制的封装技术后我成功的修改了那个TCheckTree控件。在程序开发的后期测试中,我充分利用各个同学电脑平台的多样性。把本软件在多达4种操作系统和3个不同版本的Office上进行测试。测试表明:在Windows
98/me/2000/XP平台配合Office XP/2003
下程序运行稳定且各项功能运行得都很正确!!
Delphi是Borland公司出品的开发工具,在众多的开发工具中,我们为什么要选择Delphi呢?因为Delphi具有众多其它开发工具所没有的优点!具体介绍如下:
u
开发的高效
u
语言的高效
u
编译的高效
u
执行的高效
u
维护的高效
基于以上理由,我们毫不忧郁的选择了Delphi做为我们的开发工具!!
u
TForm类的控件:
1)
BorderIcons属性:用来控制程序标题按钮的可用性。
2)
BorderStyle属性:用来控制程序边框的样式。
3)
Color属性:用来控制程序界面的颜色。
4)
Font属性:用来控制程序界面的字体。
5)
Position属性:用来控制程序运行时界面的显示位置。
u
TADOConnection类的控件:
1)
ConnectionString属性:用来控制链接字符串。
2)
LoginPrompt属性:用来控制链接时是否要输入密码。
3)
Connected属性:用来控制是否进行链接。
u
TADOQuery类的控件:
1)
Connection属性:用来指定和哪个TADOConnection控件相连。
2)
SQL属性:用来添加向数据库提交的SQL语句。
3)
Add方法:用来向SQL属性添加SQL语句。
4)
Open方法:用来执行SQL语言中的Select语句。
5)
ExecSQL方法:用来执行任何SQL语句。
6)
FieldByName属性:用来给数据库的字段赋值。
7)
FidldValues属性:用来取出数据库的字段的。
8)
Append方法:用来向数据库添加一条记录。
9)
Edit方法:用来编辑当前的记录。
10)
Post:用来向数据库提交所做的修改。
u
TADOTable类的控件:
1)
Connection属性:用来指定和哪个TADOConnection控件相连。
2)
Open方法:用来打开数据库中指定的表。
3)
FieldByName属性:用来给数据库的字段赋值。
4)
FidldValues属性:用来取出数据库的字段的。
5)
Append方法:用来向数据库添加一条记录。
6)
Edit方法:用来编辑当前的记录。
7)
Post:用来向数据库提交所做的修改。
u
TDataSource类的控件:
1)
DataSet:用来指定和哪个数据集相连。
u
TDBGrid类的控件:
1)
DataSource:用来指定和哪个TDataSource控件相连。
u
TPageControl类的控件:
1)
ActivePage属性:用来指定当前活动的Page页。
u
TCheckTree类的控件:
1)
ReadOnly属性:用来控制TCheckTree内的Item是否可编辑。
2)
Item属性:用来控制TCheckTree包含的所有树形结点。
3)
Images属性:用来指点TCheckTree中结点的图标。
4)
OnMouseUp事件:用来添加鼠标放开事件所执行的程序代码。
5)
OnStateChange事件:用来添加结点状态改变时的程序代码。
u
TFlatButton类的控件:
1)
Caption属性:用来指定TFlatButton的标题。
OnClick事件:用来添加按钮的单击事件所执行的程序代码。
Delphi连接数据库的主要方式有两种:一是:BDE ,二是ADO
。现在我们来大致比较一下这两种技术的优缺点:
BDE(Borland Database Engine)是Delphi颇具特色的数据库连接管理技术。凭借窗体和报表,BDE可以访问诸如Paradox,dBASE,本地InterBase服务器的数据库,也可访问远程数据库服务器上的数据库,如Oracle,SyBase,Informix等C/S数据库中的数据库,也可访问经ODBC可访问的数据库管理系统中的数据库。
ADO(ActiveX
Data Objects)是微软提供的一项技术。通过ADO,可以方便的访问各种类型的数据库,特别是OLEDB数据库。ADO已成为访问数据库的新的标准接口。从Delphi
6.0开始Delphi添加了对ADO的支持,以便让用户能迅速实现对终端用户用来做商业决策的数据库的一致性访问,结合Delphi本身的开发式数据组件结构,程序员可以很快地建立应用程序,用来把自己的商业数据库通过Internet发送给客户,最终用户以及整个销售环节。通过ADO,Delphi
7.0也能让用户快速访问关系或非关系数据库以及E-Mail和商务文件系统。
这两者提供了几乎相同的功能,在进行产品开发时,势必要做一个精心的比较。虽然ADO技术提出的时间不长,并被定位为工业标准的,而且其在性能上由于当前没有良好的数据库引擎支持,其性能还不够完美,但是,我们应该要注意到Borland公司已经宣布停止发展BDE了,其性能被ADO超越也是迟早的事,因此,在开发长期应用的产品时,推荐采用ADO技术。这样还有另一个好处是,在进行产品分发时,可以避开大量BDE的链接库DLL的分发。
基于以上原因我们选择了ADO做为我们的数据库访问组件。