论文无忧网提供:计算机毕业论文范文|计算机毕业设计|计算机毕业论文
栏目导航 ASP Java Web .NET VB6.0 JAVA VC VF DELPHI PB 计算机网络 计算机科学与技术 PHP 安卓APP 其他 C# 代写论文
当前位置: > 计算机 > DELPHI >

A450delphi题库系统与试卷生成+论文

3.2.2 窗体功能简介

下图软件的登陆界面

paper51.com

在这里输入用户名及密码就可以进行入软件的主界面了!! 内容来自论文无忧网 www.paper51.com

下图是软件的主界面:

copyright paper51.com

在以上的软件主界面的左边是各个功能模块的调用接口!! 内容来自论文无忧网 www.paper51.com

如:

http://www.paper51.com

抽取现有试卷:点击后进入抽取现有试卷的功能界面。

copyright paper51.com

自动生成试卷:点击后进入自动生成试卷的功能界面。 http://www.paper51.com

手动生成试卷:点击后进入手动生成试卷。

内容来自www.paper51.com

题库录入:在这里可以往数据库里添加试题。 paper51.com

题库维护:在这里可以对数据库里已有试题进行维护。

copyright paper51.com

选项设置:在这里可以对软件的其它选项进行设置。

内容来自www.paper51.com

软件的右上角有“帮助”和“关于”按钮!!在这里可以得到软件的使用帮助,和有关此软件的一些开发信息!! http://www.paper51.com

下图是自动生成试卷的界面: copyright paper51.com

上图中标为“第一部分”的树形控件是用来设置要生成的试卷的试题的抽取范围。

copyright paper51.com

上图中标为“第二部分”的是用来设置各种题型的量及其分数。

内容来自论文无忧网 www.paper51.com

上图中标为“第三部分”的是功能按钮,其中“生成试卷”用来根据“第二部分”的设置自动生成一份试卷。“预览试卷”是用来预览刚生成的试卷。“试卷答案”是用来查看刚生成的试卷的答案。“保存试卷”是用来保存刚生成的试卷的信息。

paper51.com

下图是手动生成试卷的界面图: 内容来自论文无忧网 www.paper51.com

上图中标为“第一部分”的树形控件是用来设置要生成的试卷的试题的抽取范围。 paper51.com

上图中标为“第二部分”的是用来设置各种题型的量及其分数。

内容来自论文无忧网 www.paper51.com

上图中标为“第三部分”的是用来设置试卷的部分。

http://www.paper51.com

上图中标为“第五部分”的是用来选择要加入试卷的试题。

内容来自www.paper51.com

上图中标为“第四部分”的是功能按钮,其中“加入试卷”用来把在“第五部分”的选择试题加入到要生成的试卷中。“保存试卷”是用来保存刚生成的试卷的信息。

内容来自www.paper51.com

下图是用户管理的界面: 内容来自www.paper51.com

上图中标为“第一部分”显示当前系统已有的用户。 内容来自论文无忧网 www.paper51.com

上图中标为“第二部分”选择要进行的操作。

paper51.com

上图中标为“第三部分”设置相应的信息。

http://www.paper51.com

上图中标为“第四部分”。可以删除用户或是提交对用户信息的修改。

内容来自www.paper51.com

下图是数据库功能模块的界面:

http://www.paper51.com

上图中标为“第一部分”可以改变数据库的存放路径。

内容来自www.paper51.com

上图中标为“第二部分”选择要进行的操作。 copyright paper51.com

上图中标为“第三部分”选择还原的时间点或是执行备份操作。 http://www.paper51.com

4 .  软件实现 http://www.paper51.com

4.1 OOP简介 内容来自论文无忧网 www.paper51.com

每一个软件开发人员都会经常听到,看到“面向对象”这个词,程序员也时常把它挂在嘴上。那么什么还是真正的“面向对象”?什么是面向对象的编程?是不是写几个类就算面向对象了?为什么要面向对象??

内容来自论文无忧网 www.paper51.com

“面向对象是一种思维方式,一种方法论!”

http://www.paper51.com

“结构化编程”(SP)是一种编程方法,是从计算机的视角来抽象问题的方法。而“面向对象编程”(OOP)也是一种编程方法,只不过它是从更接近真实世界的视角来分析问题,使用更接近人们理解真实世界的方法来抽象问题,这种方法称为“面向对象”(OO)!!

copyright paper51.com

“面向对象”这个词代表的是一种认识世界,分析问题,解决问题的方法,因此它是一种方法论。而面向对象编程则是将这种方法应用于程序设计的方法。当你会使用面向对象的方法去思考,用面向对象的模式支分析和解决问题的时候,才是真正的“面向对象”了!! http://www.paper51.com

“面向对象”最主要的特性有三个: 内容来自www.paper51.com

u       继承性。Delphi提供大量的可被二次开发的类。每个类都可被继承。

内容来自www.paper51.com

u       封装性。Delphi的封装性主要由类的私有域和保护域来实现的。 http://www.paper51.com

u       多态性。Delphi的多太性主要是通过虚拟方法和动态方法来实现的。

copyright paper51.com

4.2 开发的关键技术 内容来自论文无忧网 www.paper51.com

1.VBA编程技术 http://www.paper51.com

Visual Basic forApplications(简称VBA)是新一代标准宏语言。在没有VBA 以前,一些应用软件如Excel, Word, Access等都采用自己的宏语言供用户开发使用,但每一种宏语言都是相互独立的并且它们之间是互不兼容的。这导致了应用软件之间不能在程序上互联。找到一种可被所有的Microsoft可编程应用软件所共享的通用宏语言是Microsoft 公司长期追求的目标。VBA 作为新一代的标准宏语言具有了跨越多种OFFICE 应用软件并且控制应用软件对象的能力。 copyright paper51.com

Delphi里封装的三个主要交互控件:TWordApplication,TWordDocument,TwordFont.

paper51.com

本程序的主要实现技术如下:

http://www.paper51.com

const 内容来自论文无忧网 www.paper51.com

  BF_Name:array[1..10] of String=('一、','二、','三、','四、','五、','六、','七、',

copyright paper51.com

  '八、','九、','十、'); copyright paper51.com

  JG:String='   '; 内容来自论文无忧网 www.paper51.com

var

copyright paper51.com

  ItemIndex:OleVariant; copyright paper51.com

  NewDocument:_Document; 内容来自www.paper51.com

  FZ,TL,BF,STH,i,WTS,YTS:integer; 内容来自www.paper51.com

  temp,AppPath,BGName:string; http://www.paper51.com

  procedureSetFont(aBold,aItalic,aShadow,aSize:integer);

http://www.paper51.com

  begin paper51.com

   SJ_WF.ConnectTo(SJ_WD.Sentences.Get_Last.Font); paper51.com

    SJ_WF.Name:='宋体';

copyright paper51.com

    SJ_WF.Bold := aBold;

内容来自论文无忧网 www.paper51.com

    SJ_WF.Italic := aItalic;

http://www.paper51.com

    SJ_WF.Shadow := aShadow; copyright paper51.com

    SJ_WF.Size := aSize;

paper51.com

  end;

http://www.paper51.com

begin

copyright paper51.com

 AppPath:=ExtractFilePath(Application.ExeName);  //取得本程序的路径

http://www.paper51.com

  //显示进度窗口

内容来自www.paper51.com

  RateProcess_F.Show; 内容来自论文无忧网 www.paper51.com

  RateProcess_F.CZ_P.Caption:='正在链接MicrosoftOffice Word......';

http://www.paper51.com

 RateProcess_F.Rate_Gauge.MaxValue:=SJT_ADOQ.RecordCount+25;

内容来自www.paper51.com

  RateProcess_F.Repaint;   //重绘窗口,否则显示不出新设置的控件属性

内容来自论文无忧网 www.paper51.com

  try 内容来自www.paper51.com

    SJ_WA.Connect;

内容来自www.paper51.com

  except paper51.com

   MessageBox(handle,'无法连接,也许没有安装Word','连接出错',MB_Ok or MB_ICONERROR); http://www.paper51.com

    RateProcess_F.Close; paper51.com

    Abort;

http://www.paper51.com

  end;

paper51.com

 RateProcess_F.Rate_Gauge.Progress:=RateProcess_F.Rate_Gauge.Progress+10;

http://www.paper51.com

  //SJ_WA.Visible := False;

copyright paper51.com

  //SJ_WA.Caption := '题库系统与试卷生成'; 内容来自www.paper51.com

  //建立一个新文档

内容来自论文无忧网 www.paper51.com

   NewDocument:=SJ_WA.Documents.Add(EmptyParam,EmptyParam,EmptyParam,EmptyParam);

paper51.com

  RateProcess_F.CZ_P.Caption:='正在新建MicrosoftOffice Word 文档......';

内容来自论文无忧网 www.paper51.com

  RateProcess_F.Rate_Gauge.Progress:=RateProcess_F.Rate_Gauge.Progress+5; 内容来自www.paper51.com

  RateProcess_F.Repaint;

http://www.paper51.com

  //建立WordDocument连接, 用第二种方法不容易出错

copyright paper51.com

 //SJ_WD.ConnectTo(SJ_WA.Documents.Item(ItemIndex)); paper51.com

  SJ_WD.ConnectTo(NewDocument);

paper51.com

  SJ_WD.Windows.Item(ItemIndex).Caption:='数据库原理与应用期末试卷'; copyright paper51.com

//此文档的第一个窗口的标题

copyright paper51.com

 RateProcess_F.Rate_Gauge.Progress:=RateProcess_F.Rate_Gauge.Progress+5; http://www.paper51.com

  RateProcess_F.Repaint; copyright paper51.com

  //因为Word进行拼写检查需要很多时间,所以首先关闭检查 copyright paper51.com

  SJ_WA.Options.CheckSpellingAsYouType :=False;

http://www.paper51.com

  SJ_WA.Options.CheckGrammarAsYouType :=False; 内容来自www.paper51.com

  //设置Word的字体 copyright paper51.com

  SetFont(1,0,0,22); http://www.paper51.com

  //设置段落对齐方式 内容来自www.paper51.com

  SJ_WD.Range.InsertAfter('数据库原理与应用期末试卷'+#13); paper51.com

 RateProcess_F.Rate_Gauge.Progress:=RateProcess_F.Rate_Gauge.Progress+5; paper51.com

  RateProcess_F.Repaint;

http://www.paper51.com

 //SJ_WA.Documents.Item(ItemIndex).Paragraphs.Alignment:=wdAlignParagraphLeft; paper51.com

  SJ_WD.Range.InsertAfter('学校___________班级________  姓名___________得分_____ ' +#13);

内容来自论文无忧网 www.paper51.com

  SetFont(0,0,0,14); 内容来自www.paper51.com

------分隔线----------------------------
联系方式