Delphi_捕获TWebBrowser的Close事件

Delphi使用TWebBrowser控件开发自己的浏览器,如果访问的网页有关闭窗口的JavaScript代码,那么TWebBrowser控件被注销,但应用程序本身并没有关闭,这似乎不是软件开发者乐意看到的。下面的示例介绍了一种捕获网页被关闭的消息的方法:

1. 首先在应用程序窗体上添加一个TApplicationEvents控件(在Additional页上)

2. 编写该控件的OnMessage事件响应代码

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
  var Handled: Boolean);
begin
  if Msg.message = WM_CLOSE then //判断是否关闭消息
  begin
    if WebBrowser1.Handle = Msg.hwnd then //验证消息是否WebBrowser发来的
      Form1.Close; //关闭窗体本身
    Handled := true;
  end;
end;

以上代码在Delphi7编译环境下测试通过。


原文来自:http://www.learnew.com/archives/146.htm

你可能感兴趣的:(Delphi_捕获TWebBrowser的Close事件)