Delphi在Word,Excel中的应用.ppt_第1页
Delphi在Word,Excel中的应用.ppt_第2页
Delphi在Word,Excel中的应用.ppt_第3页
Delphi在Word,Excel中的应用.ppt_第4页
Delphi在Word,Excel中的应用.ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Delphi在Word及Excel中的应用,本章内容:Office应用程序服务器组件在Word软件上的应用在Excel软件上的应用,Delphi对MSOffice系列软件的支持,好的菜单设计应该具有功能强大、条理清晰、易于使用等特点:MSOffice软件实际上是应用程序服务器,它为程序员提供了非常丰富的二次开发接口,为更好的设计面向MSOffice软件的应用程序,Delphi提供了专用于开发应用程序的Office服务器组件,它们在Delphi的Servers组件面板上,包括Access,Word,Excel,PowerPoint和Outlook等组件。,如下既是Word和Excel组件在Delphi组件面板中的位置.,Server组件包中的Word和Excel组件,WordApplication,ExcelApplication,在Word软件上应用,要通过Delphi操作Word文档,首先将WordApplication组件放在窗体上,并将此组件名改为WordApp,下面将通过设置此组件的属性和方法来完成Word文档的相关操作。(1)Word的启动与退出通过Delphi程序启动和退出Word应用软件分别有两种方法,操作方法如下:启动Word通过属性启动WordWordApplication组件有一个名为AutoConnect的属性,它是专门用于启动Word的属性,将其值设置为True,则在启动窗体的同时启动Word软件。,通过代码启动Word当WordApplication组件AutoConnect的属性值设置为False时,可通过执行此组件的Connect方法来完成Word的启动工作,格式如下:组件名.Connect;退出Word退出Word与启动Word的方法很相似,它也有两种设置方式,具体设置方法如下:通过AutoQuit属性WordApplication组件有一个名为AutoQuit属性,当设置其值为True时,则关闭应用程序时,通过应用程序启动的Word也将同时关闭;而当其值为False时,关闭应用程序对启动的Word则没有影响,此时需要通过代码来关闭它。通过Quit方法通过WordApplication组件的Quit方法可关闭Word软件,使用格式如下:组件名.Quit(参数1,参数2,参数3);功能:按照设置的参数关闭打开的Word软件。,(2)打开文件,对Word文档的操作是以打开文档为前提的,使用程序代码打开Word文档是通过WordApplication组件的Open方法来完成的,它有12个参数,其使用格式为:WordApp.Documents.Open(文件名,参数1,参数11,);上述格式的功能是按照指定的参数打开Word文档。,(3)建新Word文档,创建新文档与打开文档的操作方式相似,只不过这里使用的是Add方法,定义格式如下:functionAdd(varTemplate:OleVariant;varNewTemplate:OleVariant;varDocumentType:OleVariant;varVisible:OleVariant):WordDocument功能:按指定要求建立新文档。,(4)选取操作文档,通过WordApplication组件选择要操作文档,有三种选择文档的方法,即选择所有已打开的文档、当前文档和已打开的指定文档,下面是它们的使用格式。选择所有已打开的文档格式:WordApp.Documents。选择当前正在操作的文档:格式:WordApp.ActiveDocument。选择已打开的第i个文档:格式:WordApp.Documents.item(i)。,(5)保存文档通过上一节的学习,容易知道保存文档有三种方式,分别是保存所有已打开的文档、保存当前文档和保存指定文档,下面是它们的具体使用格式。1.保存所有已打开文档使用格式:WordApp.Documents.Save(NoPrompt:OleVarant;OriginalFormat:OleVariant);2.保存当前文档使用格式:WordApp.ActiveDocument.Save;3.保存指定文档:使用格式:WordApp.Documents.itemI.Save;,(6)另存文件若要将指定的Word文档另存为一个新文档,可使用Item或ActiveDocument的SaveAs过程来另存指定文档或当前文档,SaveAs过程的定义格式如下:SaveAs(varFileName,FileFormat,LockComments,Password,AddToRecentFiles,WritePassword,ReadOnlyRecommended,EmbedTrueTypeFonts,SaveNativePictureFormat,SaveFormsData,SaveAsAOCELetter,Encoding,InsertLineBreaks,AllowSubstitutions,LineEnding,AddBiDiMarks:OleVariant);功能:将当前已打开的Word文档另存为指定文档。,(7)字体相关属性的测试与设置字体的属性主要指的是字体、字型、字号、字间距、字体的颜色等属性,这些属性的设置和测试有助于通过程序代码对Word文档的文本标注。下面分别讲解它们的设置及测试方法。1.字体的测试通过代码可以测试或设置文档中指定范围内文本的字体,但要求被测试文本的字体必须一致。2.字号的测试字体的字号是通过Size属性来测试和设置的。,字型的测试字体的字型主要有粗体、斜体和下划线等属性,它通过Font的Bold、Italic和Outline等几个属性来设置或测试。其中,(1)bold粗体(2)italic斜体(3)outline下划线上述三个属性是字体(Font)的基本属性,当属性值为-1时表示已经设置相应属性,否则表示没有设置。字间距字体的间距可通过Font的Spacing属性值来设置或测试。字体上升与下降字体的上升与下降可以通过Font的Position属性来判定,当Position0时,表示上升,否则表示下降,当Position=0时则表示正常显示。,6.字体颜色字体的颜色是通过ColorIndex属性来表示的,该属性是类型名为wdColorIndex的枚举类型,它主要有wdAuto,wdBlack,wdBlue等可选择的枚举值。具体可参见Word97.pas(Word2000.pas或WordXP.pas)文件中类型wdColorIndex的说明。7.其它属性字体的相关属性极多,下列是可能用到的部分属性:1)hidden:integer隐藏2)smallcaps:integer小型大写字母3)allcaps:integer大型大写字母4)strikethrough:integer删除线5)doublestrikethrough:integer双删除线6)subscript:integer下标7)superscript:integer上标8)underline:WdUnderline下划线,(8)查找或替换字符串,Delphi下对Word文档的查找或替换是在指定范围的文档中进行的,查找或替换通过Execute函数来完成,其使用格式为:Arange.find.Execute(varFindText,MatchCase,MatchWholeWord,MatchWildcards,MatchSoundsLike,MatchAllWordForms,Forward,Wrap,Format,ReplaceWith,Replace,MatchKashida,MatchDiacritics,MatchAlefHamza,MatchControl:OleVariant):WordBool;文档中关于段的操作对Word文档段的操作是Word文档操作的一部分,主要包括段中文本的选取、段的对齐方式、段行间距等操作,在对段操作之前,需要先选择要操作的段。1选择要操作的段为方便编程,通常情况下,选择的段需要保存到段变量中,定义段变量的格式为:Var段变量名:Paragraph;为方便讲解,下面约定Apara为段变量,定义格式为:Apara:Paragraph。有了段变量,就可选择我们要操作的段,并将其保存到定义的Apara变量中。,(1)当前文档中的段选择Apara:=WordApp.ActiveDocument.Paragraphs.item(i);功能:Apara表示当前文档的第i段(2)指定文档中的段选择Apara:=WordApp.Documents.Item(i).Paragraphs.item(j);功能:Apara表示第i个文档的第j段。注意,这里Apara仅表示段,若要对段内的文本进行操作,则必须通过其范围属性range选择要操作的文本。段范围可通过Apara.range来获取。2.选择段文本段文本的选择就是从指定的段中选择文本内容。使用格式:段变量.Range.text。功能:选取指定范围内的文本内容。3.段的对齐设置段对齐设置就是设置段内容的水平对齐方式,段的水平对齐方式主要有水平居中、左对齐、右对齐和两端对齐四种方式,设置格式如下:格式:Apara.Alignment:=对齐参数;4.段行距的设定及测试段行距的设定及测试是通过段变量的LineSpacing属性来完成,LineSpacing属性有以下几个固定值(单位为磅)。,5.段缩进的设置及测试按作用范围的不同,段缩进可分为行首缩进和整体缩进两种,下面分别讲述这两种缩进的设置及测试方法。段首行缩进在段变量中,表示首行缩进的是数值型属性为FirstLineIndent(单位为磅),缩进值与缩进字符和字体大小之间的关系为:缩进值=缩进字符个数*段首字体大小。(2)段的整体缩进段的整体缩进又可以分为左缩进、右缩进和悬挂缩进三种,具体的测试或设置如下。段左缩进的测试及设置段的左缩进是通过设置APara的LeftIndent属性来完成的。注意:当段整体左缩进时,LeftIndent的值和缩进字符的关系与行首缩进和缩进字符的关系相同,所以以字符个数为标准测试左缩进的方法为:if(Apara.LeftIndent/arange.Font.size=2)thenshowmessage(左缩进2个字符);段右缩进的测试与设置。段右缩进的测试与设置方法与相同,只是属性名不同而已,右缩进使用的属性名为RightIndent。,悬挂缩进的判别在Delphi中无此专用属性,但可以通过首行缩进和左缩进来设置或测试,实际上悬挂缩进值是首行缩进与左缩进的差,其判别方法如下实例:,悬挂缩进图示,6段边框的设置使用段变量的OutsideLinestyle属性可测试或设置段的边框。若此属性的值为wdLinestyleNone则表示没有边框,否则有边框。本节内容仅讲述了Delphi在Word中的部分应用,其实,Word的所有功能几乎都可通过程序代码来实现,包括表格、图表等方面的操作。有兴趣的读者请根据Word提供的编程帮助来编写相应的应用程序。,在Excel上的应用,Excel是以表格处理为主的应用软件,因此,本节对Excel的编程操作也以表格处理为主。Delphi在Excel上的应用方法与Word相似,仍是采用先选择操作范围再进行操作的方式,编程中主要使用ExcelApplication组件的两个子对象,分别是workbooks(工作薄)和worksheets(工作表),下面将具体说明它们的用法。要通过Delphi操作Word文档,首先将WordApplication组件放在窗体上,并将此组件名改为WordApp,下面将通过设置此组件的属性和方法来完成Word文档的相关操作。,Excel软件的启动与退出启动Excel与启动Word相似,启动Excel也有两种方法,具体操作如下:通过属性启动WordExcelApplication组件有一个名为AutoConnect的属性,它是专门用于启动Excel的属性,将其值设置为True,则应用程序启动窗体时,同时启动Excel软件。通过代码启动Excel当ExcelApplication组件的AutoConnect属性值设置为False时,通过执行此组件的Connect方法可完成Excel的启动工作,格式如下:组件名.Connect;退出Excel退出Excel与启动Excel的方法很相似,具体设置方法如下:通过AutoQuit属性ExcelApplication组件有一个名为AutoQuit属性,当设置其值为True时,则当关闭应用程序时,通过应用程序启动的Excel也将同时关闭;而当其值为False时,关闭应用程序对启动的Excel没有影响,此时需要通过代码来关闭它。,通过Quit方法通过代码关闭Excel使用格式为:组件名.Quit;此格式的功能是关闭已打开的Excel软件。例如,使用代码将由ExcelApp组件启动的Excel软件关闭,代码为:ExcelApp.Quit;新建工作簿建立工作薄可通过ExcelApplication组件的Workbooks子对象的方法来完成,使用格式如下:ExcelApp.Workbooks.Add(Template:OleVariant;lcid:Integer):ExcelWorkbook;上格式的功能是按指定的模板建立新工作薄。其中,Template是一个OleVariant类型的参数,用于确定如何创建工作簿。如果此参数为MicrosoftExcel文件名的字符串(文件名可包含路径),那么创建新工作簿将以该指定的文件作为模板。如果此参数为常量,新工作簿将包含指定类型的单张工作表。可用的常量为XlWBATemplate类型,有xlWBATChart、xlWBATExcel4IntlMacroSheet、xlWBATExcel4MacroSheet或xlWBATWorksheet四个可供选择的值。若使用EmptyParam,表示省略本参数,MicrosoftExcel将创建包含有一定数目的空白工作表的工作簿(该数目由ExcelApplication组件的SheetsInNewWorkbook属性设置)。参数lcid通常为0,表示软件系统使用默认语言。,打开工作薄应用程序经常使用的操作通常是在打开的旧文件中进行的,例如,通过软件批阅考生的Excel文件是否达到考试要求等,这就需要打开已有的文件,打开已有Excel文件的格式为:ExcelApp.Workbooks.Open(constFilename:WideString;UpdateLinks:OleVariant;ReadOnly:OleVariant;Format:OleVariant;Password:OleVariant;WriteResPassword:OleVariant;IgnoreReadOnlyRecommended:OleVariant;Origin:OleVariant;Delimiter:leVariant;Editable:OleVariant;Notify:OleVariant;Converter:OleVariant;AddToMru:OleVariant;Local:OleVariant;CorruptLoad:OleVariant;lcid:Integer):ExcelWorkbook;功能:按照参数设置打开Excel文件,格式中有较多参数,其中部分参数的含义下:FileName是一个WideString类型参数,用于指定要打开的Excel文件名。UpdateLinks是一个Variant类型的。用于指定文件中链接的更新方式。如果省略本参数,则提示用户选择链接的更新方式。ReadOnly是一个Variant类型的可选参数。如果该值为True,则以只读模式打开工作簿。Format是一个Variant类型的可选参数。如果MicrosoftExcel正在打开一个文本文件,则该参数用于指定分隔字符,如下表所示。如果省略本参数,则使用当前的分隔符。,工作薄及工作表的选择对Excel文档的操作实际上是对Excel工作薄中工作表的操作,因此,正确选择要操作的工作表是十分关键的,下面讲解工作薄和工作表的选择方法。1工作薄选择格式:ExcelApp.workbooksI或ExcelApp.workbooks.itemI功能:选择第I个工作薄。2工作表选择格式:ExcelApp.workbooksI.WorksheetsJ或ExcelApp.workbooksI.Worksheets.itemJ功能:选择第I个工作薄中的第J个工作表。选择操作范围与Word操作一样,操作前首先要选择操作的范围,为方便编程,操作范围通常保存在范围变量中,定义Excel变量的方法与定义Word变量的方法略有不同,Excel中使用的范围变量定义格式为:Var变量名:Excelrange;本小节约定Arange表示Excel范围变量,定义格式为VarArange:ExcelRange。使用Arange变量可保存指定单元格区域,使用格式为:Arange:=工作表.Range开始单元格,结束单元格。,边框设置和测试边框设置包括线型和粗细的设置,边框的线型及粗细可分别使用LineStyle和Weight两个属性来设置,使用格式如下:边框的线型设置Arange.Borders.Itemindex.LineStyle:=设置值;边框的粗细设置Arange.Borders.Itemindex.Weight:=设置值;字体设置及测试(8)单元格对齐方式的设置与检测单元格对齐方式有两种,一种是水平对齐,另一种是垂直对齐,这两种对齐方式可通过范围变量的HorizontalAlignment和Verticalalignment两个属性来设置,下面是它们的具体用法。水平对齐方式Excel中单元格中文本的对齐方式的设置格式为:Arange.HorizontalAlignment:=设置值。,垂直对齐方式设置格式为:Arange.Verticalalignment:=设置值。其中的设置值有如下选择:1)xlVAlignBottom下对齐2)xlVAlignTop上对齐3)xlVAlignCeter垂直居中4)xlVAlignJustify正常对齐xlVAlignDistributed等距分布(9)行高和列宽的设置与测试Excel中单元格的行高和列宽可使用范围变量的RowHeight和ColumnWidth属性来设置,它们具体设置方法如下:1.行高使用格式:Arange.RowHeight:=高度例:Arange.RowHeight:=20;/将行高设置为202.列宽使用格式:Arange.ColumnWidth:=宽度例:Arange.columnwidth:=5;/将列宽设置为5数字格式的选择与设置使用范围Arange的NumberFormat属性可设置单元格的显示格式,由于单元格有较多的显示方式,下面说明几种常用的设置方法。,数据显示格式的设置:1)保留小数位格式:Arange.NumberFormat:=0.0000;例如:将Arange的数值保留三位小数。代码如下:Arange.Numberformat:=0.000;/表示保留三位小数。2)使用百分号:格式:Arange.NumberFormat:=0.0000%;例如:0%表示整型,如1表示为100%0.00%表示有二位小数百分数如1表示为100.00%0.000%表示有三位小数百分数如1表示为100.000%3)使用货币和分节符格式:Arange.Nu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论