怎么样捕获word的关闭事件?(100分)

  • 主题发起人 主题发起人 notnoname
  • 开始时间 开始时间
N

notnoname

Unregistered / Unconfirmed
GUEST, unregistred user!
请看看我的代码的问题。
var
WordApplication:OLEVariant;
begin
WordApplication := CreateOleObject('Word.Application');
WordApplication.Visible:=True;
WordApplication.WordApplication_Quit():=Form1.OnWordClose;//就是这
end;
说实话我更本不知道该怎么办?word的帮助上的例子是:
Public WithEvents appWord as Word.Application

Private Sub appWord_Quit()
CommandBars("Standard").Visible = True
CommandBars("Formatting").Visible = True
End Sub
不明白!
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=737517
里面
http://www.delphibbs.com/delphibbs/dispq.asp?lid=888705
这个回答能给出一点建议,不过我没用过。

我当初就是直接在Word里面使用VBA来判断的,可以先于Word自己的提示对话框出现给出提示,进行处理的。
 
上面那个你看不懂就别看了,看我下面的这段代码吧

var
SaveChanges, OriginalFormat, RouteDocument: OleVariant;
begin
SaveChanges := WdDoNotSaveChanges;
OriginalFormat := UnAssigned;
RouteDocument := UnAssigned;
try
WordApplication.Quit(SaveChanges, OriginalFormat, RouteDocument);
WordApplication.Disconnect;
except
on E: Exception do
begin
Showmessage(E.Message);
WordApplication.Disconnect;
end;
end;
end;

 
用 CreateOleObject('Word.Application')方式来获得事件估计还没人试过。

为何不用D5自带的控件,如果嫌他不好,可以看看
C:/Program Files/Borland/Delphi5/Demos/Activex/Oleauto/Word8
尤其是autoimpl.pas(可是原理哦)
 
多人接受答案了。
 
后退
顶部