【VB开源代码栏目提醒】:网学会员VB开源代码为您提供WEB应用程序设计毕业论文 - 毕业设计参考,解决您在WEB应用程序设计毕业论文 - 毕业设计学习中工作中的难题,参考学习。
WEB 应用程序设计毕业
论文题 目:打印技术在学生量化考核系统中的应用和研究专 业: WEB 应用程序设计 目 录第一章 绪论 ......................................................................................................................................................2第二章 目前系统常用的打印方法简介.......................................................................................................4 三.C应用程序的几种打印方法 .................................................................................................... 8 1. 重要的打印类...........................................................................................................................8第三章 asp.net 简介 .....................................................................................................................................19第四章 学生量化考核系统概述 ....................................................................................................................21 4.1 系统设计思想 ........................................................................................................................ 21 4.2 系统总体结构图 .................................................................................................................... 21 4.3 系统功能模块图 .................................................................................................................... 22 4.3.1 客户端服务设计 ..................................................................................................................22 4.3.2 WEB 端服务设计 ...................................................................................................................22 4.4 系统开发工具 ........................................................................................................................ 22 4.5 查询功能模块
设计 ................................................................................................................ 22 4.5.1 查询条件功能设计 ..............................................................................................................22 4.5.2
搜索功能设计 ......................................................................................................................23 4.5.3 打印功能设计 ......................................................................................................................23 4.6 系统管理功能模块设计 .......................................................................................................... 24 4.6.1 用户权限功能设计 ..............................................................................................................24 4.6.2 数据导入功能设计 ..............................................................................................................24 4.6.3 后台管理功能设计 ..............................................................................................................24第五章 实现 ................................................................................................................错误!未定义书签。
5.1 使用方法介绍 ............................................................................................................................ 26 5.2 程序
代码解析 ............................................................................................................................ 26第六章 成果 ....................................................................................................................................................36第七章 参考文献 ............................................................................................................................................36第八章 附录 ....................................................................................................................错误!未定义书签。
1 摘 要 学生量化考核系统基于 Microsoft Visual Studio 2003 前 台开发平台,以 SQLService 2000 作为后台数据库开发,整个系统总共划分为三大功能模块:量化查询模块,量化评分模块,系统管理模块。
在整个系统中,打印功能是不可或缺的。
尤其在该系统中
查询模块可以根据用户的要求显示出所需的信息,不同的用户有不同的需求,例如辅导员有时需要打印报表,如果该系统不支持打印技术,那么就需要用户复制需要打印的内容到如 EXCEL 等中打印,操作烦琐,给用户带来诸多不便,因此
系统自带打印功能操作起来方便、快捷,提高了工作效率与准确率。
本课题主要是研究目前许多系统中盛用的一些打印技术,并根据学生量化考核系统的特点,寻找一种适合本系统的打印方法,实现一键轻松打印的功能,方便用户,减轻服务器的承载负担。
关键字:打印方法,C,
VB 第一章 绪论 现在高校的学生各项信息的管理趋向于复杂化和多元化,随着计算机的广泛应用,越来越多的高校均采用了计算机化的管理模式。
查询、修改、录入、删除等基本操作都采用了计算机的数据库技术。
比起以前使用卡片的方法有了很大的进步,方便管理,易于更新,极大的方便了学生信息的管理工作。
以前我国的大中专院校学生信息的管理水平停留在纸介质的基础上,那样的机制不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。
“学生量化考核系统”是一个学校不可缺少的部分它的内容对于学校管理者和被管理者来说都至关重要所以学生档案
管理系统应该能够为用户提供充足的信息和快捷的查询手段。
通过调查,几乎所有的大中专院校均以采用了计算机化的管理模式,极大的方便了学校的学生量化的管理
工作。
作为计算机应用的一部分使用
计算机对学生量化信息进行管理具有着手工管理所无法比拟的优点。
例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生档案管理的效率也是学校的科学化、正规化管理与社会接轨的重要条件。
打印功能在学生量化考核系统中是不可或缺的功能之一,在该系统其中查询模块可以根据用户的要求显示出所需的信息,不同的用户有不同的需求,例如辅导员有时需要打印报表,如果该系统不支持打印技术,那么就需要用户复制需要打印的内容到如 EXCEL等中打印,操作烦琐,给用户带来诸多不便,因此系统自带打印功能操作起来方便、快捷,提高了工作效率与准确率。
当今,在许多系统中都自带打印功能,只需轻轻的一点击,就能轻松的完成打印任务,实现打印功能有多种方法, 诸如:利用.NET 平台中的控件WEB 实现打印功能 利用 http组件来实现页面打印,在 C中实现,通过调用 EXCEL 或者 WORD,以及调用 IE 浏览器等多样的可行性
方案,用户可根据各自不同的需要,选择适当的方法实现系统的打印功能。
随着计算机技术的发展,
软件平台功能越来越强大,高级语言的多样化,实现打印功能的方法不断创新,在不久的将来,开发者会充分的利用计算机本机的资源,调用本机的功能轻松化的满足用户的需求。
在此毕业
论文中,我将充分结合所学的知识以及课外搜集的技术,根据在大实训中参与的“学生量化考核系统”的建设中了解到该的用户需求及系统特点,尽我所能地将其综合起来,尽可能完美地让用户实现打印功能。
3 第二章 目前系统
常用的打印方法简介 打印是编制应用程序过程中最复杂的事情之一,不同的打印机提供了各种不同的功能。
编写能充分利用打印机性能的子程序与编写应用程序的其它部分一样都很困难。
庆幸的微软的 Windows 平台使打印工作变得相对容易了,以下我就介绍几种打印方法:一.Visual Basic 应用程序的几种打印方法 1、采用 Visual Basic 提供简单的打印函数 PrintForm 方法 应用程序窗体的 PrintForm 方法时,Visual Basic 把窗体的位图送到当前打印机。
该方法的优点在于它几乎不需要任何编程,但也有很大缺陷。
最为突出的是当低分辨率图形在高分辨率打印机上打印时,其结果令人无法满意,会产生锯齿。
下面
代码将在打印机上打印窗体。
Private Sub Command1_Click 用 PrintForm 打印Me.PrintForm 打印窗体的可见区域End Sub2、用 Printer 对象 用 Printer 对象可以进行高分辨率输出,但要想产生复杂的打印输出,编程较为繁琐。
Printer 对象代表系统确省的打印机。
Printer 对象支持许多由窗体和图形框所支持的属性和方法,三种对象都有画线和画方框。
应用
程序可用以下列
代码在 Printer 对象上画出一平方英寸的方框。
它离左上角二英寸。
注意:打印机以 twips 来测量距离。
每英寸有 1440 个 twips。
Printer.Line2144021440-Step14401440 B 打印机、从窗体和图形框都有 Circle、PaintPicture、Print、Pset、TextHeight、TextWidth 方法。
使用这些方法,应用程序可以为打印机生成高分辨率输出。
打印文本直接用 Print 方法,见下列
代码: Printer.Print “HelloChina ComputerWorld” 打印字符串 Printer 对象还有一些窗体和图形框都没有方法: NewPage 告诉打印机,程序对当前输出页的发送已经结束。
Printer 对象应开始新的一页。
EndDoc 告诉 VISUAL BASIC,程序创建
文档结束。
VISUAL BASIC 应将它发送到物理打印机上打印。
KillDoc 取消当前打印作业。
应用程序应该终止由 EndDoc 和 KillDoc 所设定的每个打印
作业。
Zoom 属性用于定义打印输出的缩放因子。
Copies 属性用于定义打印的副本数目。
这种方法通过灵活的编程可以方便地调整字体、字型、线形、页 面、纸张大小等可打印出比较满意的效果。
如果计算机上装有 Microsoft Word 和 Microsoft Excel则可把 GRID 的表格通过
VB 发送到这些应用程序中去生成 Microsoft Word 和 Microsoft Excel 表格。
这样可以充分利用它们的打印、编辑功能打印 出更理想的效果。
下面逐一介绍。
3、采用直接将数据传送打印机的方法进行打印输出 该方法也不太实用。
有两种方法将数据送往打印机。
第一种是用 Print 方法,就象将数据写入一个文件一样写数据。
另一种方法写端口,但不是送文本,而是送特定的 PCL语言,PCL 表示打印控制语言Print Control Language。
它是一种特殊语言,用转义
代码来控制打印机的具体动作。
此方法实现起来颇为繁琐。
4、使用 RichTextBox 控件的 SelPrint 方法 如果你在编程时用到了 RichTextBox 控制,那么你可以使用该控件的 SelPrint 方法来打印,使用非常简单。
下面一段
代码即用 RichTextBox 控件的 SelPrint 方法来完成打印。
Private Sub Command3_Click SelPrint 方法CommonDialog1.Flags cdlPDReturnDC cdlPDNoPageNumsIf RTF1.SelLength 0 Then RTF1 为窗体的 RichTextBox 控制CommonDialog1.Flags CommonDialog1.Flags cdlPDAllPagesElseCommonDialog1.Flags CommonDialog1.Flags cdlPDSelectionEnd IfCommonDialog1.CancelError TrueOn Error Resume NextCommonDialog1.ShowPrinterIf Err.Number cdlCancel Then Exit SubIf Err.Number lt gt 0 ThenBeepMsgBox quotError printing file.quot amp vbCrLf Err.Description vbOKOnly vbExclamationquotPrinting ErrorquotExit SubEnd IfPrinter.Print quotquotRTF1.SelPrint CommonDialog1.hDC 打印 RTF1 控件的可见区域End Sub 上面
代码先进行打进设置,再进行打印。
如果不需要设置,采用下面
代码更为简单。
RTF1.SelPrint Printer.hDC 打印 RTF1 控件的可见区域5、可以在
VB 中调用 Word 提供的 OLE 自动化服务 如果计算机上装有 Microsoft Word 和 Microsoft Excel则可把 GRID 的表格通过
VB 发送到这些应用程序中去生成 Microsoft Word 和 Microsoft Excel 表格。
这样可以充分利用它们的打印、编辑功能打印 出更理想的效果。
下面
代码说明
VB 如何与 Word 集成。
Private Sub Command4_Click 调用 Word 打印Dim objWord As ObjectConst CLASSOBJECT quotWord.ApplicationquotOn Error GoTo objErrorSet objWord CreateObjectCLASSOBJECTobjWord.Visible TrueobjWord.Documents.AddWith objWord 5.ActiveDocument.Paragraphs.Last.Range.Bold False.ActiveDocument.Paragraphs.Last.Range.Font.Size 20.ActiveDocument.Paragraphs.Last.Range.Font.Name quot黑体quot.ActiveDocument.Paragraphs.Last.Range.Font.ColorIndex 4.ActiveDocument.Paragraphs.Last.Range.Text quot我是计算机世界读者quotEnd WithClipboard.ClearClipboard.SetText quot通过剪切板向 WORD 传送数据quotobjWord.Selection.PasteobjWord.PrintPreview True 预览方式objWord.PrintOut执行打印objWord.Quit退出 WordExit SubobjError:If Err lt gt 429 ThenMsgBox StrErr amp ErrorSet objWord Nothing 不能创建 Word 对象则退出Exit SubElseResume NextEnd IfEnd Sub通过生成 Word 表格打印实现步骤如下: a. 在 declaration 中写入: Dim msword As Object b. 加入打印命令按钮command2CAPTION 设为quot生成 Word 表格quot 写入下面
代码:Private Sub command2_Click screen.MousePointer 11 Set msword CreateObjectquotword.basicquot Dim AppID ReturnValue appID Shellquotd:office97officeWIN- WORD.EXEquot 1 ’运行 Word msword.AppActivate quotMicrosoft Wordquot full Screen.MousePointer 0 End Sub c. 写入以下过程 full Sub full Dim i As Integer j As Integer col As Integer row As Integer Dim cellcontent As String Me.Hide cols 4 ’表格的列数 row gridrow ’打印表的行数 msword.filenewdefault msword.MsgBox quot正在建立 MS_WORD 报表请稍候 ……quot quotquot -1 msword.leftpara msword.screenupdating 0 msword.tableinserttable col row 16 167 msword.startofdocument for j0 to gridrow ’表格的行数 grid1.rowj For i 1 To cols Gri1d.coli If IsNullgrid1.text Then cellcontent quotquot Else cellcontent grid1.text End If ms
word.Insert cellcontent msword.nextcell Next i Next j msword.tabledeleterow msword.startofdocument msword.tableselectrow msword.tableheadings 1 msword.centerpara ’msword.startdocument msword.screenrefresh msword.screenupdating 1 msword.MsgBox quot结束quot quotquot -1 Me.Show End Sub通过发送到 Excel 实现表格打印步骤如下: 加入打印命令按钮command3CAPTION 设为quot生成 EXCEL 表格quot 写入下面
代码:Private Sub command3_Click Dim i As Integer Dim j As Integer Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Set xlApp CreateObjectquotExcel.Applicationquot xlApp.Visible True Set xlBook xlApp.Workbooks.Add Set xlSheet xlBook.Worksheets1 xlSheet.Cells6 1 quotiquot For i 0 To gridrow grid1.Row i For j 0 To 6 7 Grid1.Col j If IsNullGrid1.Text False Then xlSheet.Cellsi 5 j 1 Grid1.Text End If Next j Next i End Sub三.C应用程序的几种打印方法 1. 重要的打印类 PrintDocument 用于将输出发送到打印机。
可实例化一个 PrintDocument设置一 些属性描述打印的内容,然后调用 Print 方法。
PrintDocument 为要打印的每一页引发 PrintPage 事件。
可向此事件的事件处理程序添加打印逻辑。
.
NET 框 架 提 供 两 个 控 制 器 : DefaultPrintController 呈 现 到 打 印 机 ; PreviewPrintController 呈 现 到 PrintPreviewControl ; 通 常 , 从 来 不 必 实 现 PrintController 仅当要呈现到其他土面时才实现 PrintController。
2.打印逻辑 需要做的第一件事是编写打印逻辑。
这可通过处理 PrintDocument 上的事件来完 成 。
当 调 用 PrintDocument.Print 方 法 时 , 引 发 下 列 事 件 : BeginPrint 、 PrintPage一个或多个、EndPrint; PrintPage 事件的参数类型(PrintPageEventArgs)具有 HasMorePages 属性。
如 果在事件处理程序返回时,此属性设置为 true,则 PrintDocument 设置新页并再次引 发 PrintPage 事件。
因此,PrintPage 事件处理程序中的逻辑基本上是:使用事件参数中的信息页的 内容。
这些事件参数包含打印机的 Graphics、该页的 PageSettings、页的边界以及边 距的大小;确定是否还要打印其他页;如果还有其他页,则将 HasMorePages 设置为 ture;如果没有其他页,则将 HasMorePage 设置为 fasle 在最简单的情况下,可以作为包含打印请求的 Form 的一部分创建 PrintDocument 和处理 PrintPage 事件。
//可以打印的示例public class PrintCtl:Form private string printBuffer private Font printFont private int startLine//点击打印按钮时事件被触发private void print_Clickobject senderEventArgs e fileToPrintnew StreamReader“PrintMe.Txt” try printFontnew Font“Atial”10 PrintDocument pdnew printDocument pd.PrintPage new PrintPageEventHandlerthis.pd_PrintPage pd.Print finally fileToPrint.Close //每个页被打印时触发事件private void pd_PrintPageobject senderPrintPageEventArgs ev float lpp0 float yPos0 int count0 float leftMarginev.MarginBounds.Left float topMarginev.MarginBounds.Top string linenull//计算每页可以打印多少行//使用 MarginBoundslppev.MarginBounds.Height/printFont.GetHeightev.Graphics//这里假定一行不会长过一页while countltlopampamplinestreamToPrint.ReadLinenull yPostopMargin countprintFont.GetHeightev.Graphics //打印预览不会工作 Ev.Graphics.DrawStringlineprintFontBrushes.BlackleftMargin yPosnewStringFormat count //如果还有更多行则打印下一页 iflinenull ev.HasMorePages true else ev.HasMorePages false … 3.定义自己的打印
文档 对于复杂的打印作业或要在多个窗体间重复使用的打印逻辑可以从 PrintDocument派生一个新类并将打印逻辑封装到该类中.在这种情况下请通过重写 OnPrintPage 方法而不是使用事件来处理程.