1.很像我们公司以前开发的一套商业文档流转平台的主要功能,给你我写的两个函数
//打开或创建DOC文件
//MsWord:目标Word.Application对象
//MsDoc:目标Document对象
//FileName:目标文件
//TemplateName:模板文件
function OpenDocObj(MsWord:OleVariant;var MsDoc:OleVariant;FileName,TemplateName:string):string;
begin
result:='1';
try
MsDoc:=MsWord.Documents.Open(FileName);
//2003-03-20 不显示拼写和语法错误
MsDoc.Activate;
MsDoc.ShowSpellingErrors:=false;
MsDoc.Activate;
MsDoc.ShowGrammaticalErrors:=false;
MsDoc.Activate;
if not MsDoc.ReadOnly then MsDoc.AttachedTemplate:=TemplateName;
except
try
MsDoc:=MsWord.Documents.Add(TemplateName);
//2003-03-20 不显示拼写和语法错误
MsDoc.Activate;
MsDoc.ShowSpellingErrors:=false;
MsDoc.Activate;
MsDoc.ShowGrammaticalErrors:=false;
MsDoc.Activate;
MsDoc.SaveAs(FileName);
except
result:='Word操作失败';
end;
end;
end;
//在当前位置插入DOC文档
//MsDoc:目标Document对象
//FileName:插入DOC文件路径名称
function InsertDoc(MsDoc:OleVariant;FileName:string):string;
var
MsSelection:OleVariant;
begin
result:='1';
try
MsDoc.Activate;
MsSelection:=MsDoc.ActiveWindow.Selection;
MsDoc.Activate;
MsSelection.TypeParagraph;
MsDoc.Activate;
MsSelection.InsertFile(FileName);
except
result:='Word操作失败';
end;
end;
2.包括菜单也可以定义在模板里,只要在代码里关联click事件就行了,当然也可以动态加,具体方法查看commandbars及其相关对象的帮助
3.再给你三个函数
//打开DOC文件的修订模式
//MsDoc:目标Document对象
function ShowRevision(MsDoc:OleVariant):string;
begin
result:='1';
try
MsDoc.Activate;
MsDoc.TrackRevisions:=true;
MsDoc.Activate;
MsDoc.PrintRevisions:=false;
MsDoc.Activate;
MsDoc.ShowRevisions:=true;
except
result:='Word操作失败';
end;
end;
//接收DOC文件的修订
//MsDoc:目标Document对象
function AcceptRevision(MsDoc:OleVariant):string;
begin
result:='1';
try
MsDoc.Activate;
MsDoc.AcceptAllRevisions;
except
result:='Word操作失败';
end;
end;
//拒绝DOC文件的修订
//MsDoc:目标Document对象
function RejeptRevision(MsDoc:OleVariant):string;
begin
result:='1';
try
MsDoc.Activate;
MsDoc.RejectAllRevisions;
except
result:='Word操作失败';
end;
end;
4.5.我想已经超出word ole的范畴了
可惜没有分了