使用CreateOleObject方法对WORD文档操作具有先天所具备的优势,与delphi所提供的那些控件方式的访问相比,CreateOleObject方法距离WORD核心的操作“更近”,因为它直接使用OFFICE所提供的VBA语言对WORD文档的操作进行编程。
以下是我在本机上所做的实验,机器软件配置如下:
Windows XP+delphi7.0+OFFICE 2003
这个程序很简单,在页面上放置了一个edit和一个button,每单击一次按钮,就会自动把edit中的内容添加在后台中的word文档中,程序关闭时文件自动保存在当前程序的主目录中。
- unit main;
-
- interface
-
-
-
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Comobj, WordXP, Dialogs, StdCtrls;
-
- type
- TForm1 = class(TForm)
- Button1: TButton;
- Edit1: TEdit;
- procedure Button1Click(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure FormClose(Sender: TObject; var Action: TCloseAction);
-
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
- var
- Form1: TForm1;
-
- FWord: Variant;
- FDoc: Variant;
-
- implementation
-
- {$R *.dfm}
-
- procedure TForm1.Button1Click(Sender: TObject);
- begin
- FWord.Selection.TypeParagraph;
- FWord.Selection.TypeText(Text := form1.Edit1.Text);
- end;
-
-
- procedure TForm1.FormCreate(Sender: TObject);
- begin
-
- try
- FWord := CreateOleObject('Word.Application');
-
- FWord.Visible := False;
- except
- ShowMessage('创建word对象失败!');
- Exit;
- end;
-
-
- try
- FDoc := FWord.Documents.Add;
- FWord.Selection.TypeText(Text := 'Hello,');
- FWord.Selection.TypeParagraph; (责任编辑:admin)
|