線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1326
推到 Plurk!
推到 Facebook!

怎样在DELPHI中新建一个WORD文档

答題得分者是:deity
sl@cableplus.com.cn
高階會員


發表:168
回覆:359
積分:130
註冊:2004-03-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-26 17:32:59 IP:218.80.xxx.xxx 未訂閱
怎样在DELPHI中新建一个WORD文档? 怎样在DELPHI中打开一个Word文档?
deity
尊榮會員


發表:90
回覆:876
積分:678
註冊:2003-05-09

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-03-28 09:35:36 IP:219.129.xxx.xxx 未訂閱
sl@cableplus.com.cn你好: 可参考下面写法 http://www.delphibbs.com/delphibbs/dispq.asp?lid=1514274 http://www.delphifans.com/article_view.asp?id=264 摘录 具体实现过程如下: 1) 创建一个新的应用程序工程,在窗体中添加一个Button组件和一个Edit组件。 2) 在Uses语句中添加ComObj单元。 3) 在窗体的OnCreate事件处理过程中创建Word实例,具体方法与前面类似。 4) 添加Button组件的OnClick事件的处理过程,具体见下面的程序清单。 程序清单 unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,ComObj ; type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; procedure FormCreate(Sender: TO b j e c t ) ; procedure Button1Click(Sender: TO b j e c t ) ; private { Private declarations } public { Public declarations } end ; var Form1: TForm1; v_app: variant; implementation {$R *. D F M } procedure TForm1.FormCreate(Sender: TO b j e c t ) ; begin try v_app : = GetActiveOleObject( ' Wo r d . A p p l i c a t i o n ' ) ; except v_app : = CreateOleObject( ' Wo r d . A p p l i c a t i o n ' ) ; end; end ; procedure TForm1.Button1Click(Sender: TObject) ; var v_doc, v_ran : Variant; begin // 在Wo r d中新建一个文档,并添加文本,然后设置粗体和字体大小 v_app.Visible: = True ; v_app.Documents.Add; v_app.Documents.Item(1).Range.Text:=Edit1.Text; v_doc:=v_app.Documents.Item(1) ; v_doc.Paragraphs.Add; v_ran:=v_doc.Paragraphs.Item(1).Range; v_ran.Bold:=1; v_ran.Font.Size : = 25 ; end; end . ——行径窄处,留一步与人行——
sl@cableplus.com.cn
高階會員


發表:168
回覆:359
積分:130
註冊:2004-03-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-03-29 09:16:18 IP:218.80.xxx.xxx 未訂閱
v_app.Documents.Item(1).Range.Text:=Edit1.Text; 上面这句代码指的是什么
sl@cableplus.com.cn
高階會員


發表:168
回覆:359
積分:130
註冊:2004-03-26

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-03-29 10:07:20 IP:218.80.xxx.xxx 未訂閱
如下代码:双击BOTTON按钮 procedure TFrmOAKnowledgeEdit.Button1Click(Sender: TObject); var Word, doc: Variant; begin inherited; try Word := GetActiveOleObject('Word.Application'); except Word := CreateOleObject('Word.Application'); end; //打开一个WORD文档 if OpenDialog1.Execute then begin doc := word.documents.Open(OpenDialog1.FileName, False); word.visible := true; end; 希望对该文档进行编辑,然后保存,并通过流文件(FileStream)保存到数据库中 // 创建文件流: Word_FileStream := TFileStream.Create(此处应该怎么写?, fmOpenWrite or fmCreate); Word_FileStream.Position := 0; //保存进数据库('Content')字段中 TBlobField(QryMaster.FieldByName('Content')).loadfromStream(OpenDialog1.FileName);
deity
尊榮會員


發表:90
回覆:876
積分:678
註冊:2003-05-09

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-03-29 23:06:11 IP:219.129.xxx.xxx 未訂閱
你好: // 创建文件流: Word_FileStream := TFileStream.Create(your file name,fmOpenWrite or fmCreate); Word_FileStream.Position := 0; 可以参考下面这段: var blobstream:tblobstream; filestream;Tfilestream; begin try table1.insert; blobstream:=table1.createblobstream(table1.fieldbyname('Content'),bmreadwrite); filestream:=tfilestream.create('c:\test.doc'); blobstream.copyfrom(filestream,filestream.size); table1.post; finally blobdtream.free; filestream.free; end; 试试看 ——行径窄处,留一步与人行—— 發表人 - deity 於 2004/03/29 23:10:57
系統時間:2024-05-17 12:21:03
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!