Delphi处理TWebBrowser的Close事件
生活随笔
收集整理的這篇文章主要介紹了
Delphi处理TWebBrowser的Close事件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
當TWebBrowser控件訪問的 Web 頁上的腳本調用window.close方法時,TWebBrowser控件可能會在窗體中消失。我們的程序應該對此作出反應,否則再次訪問TWebBrowser控件將引發異常。當TWebBrowser控件銷毀前會向其父窗口(即我們的程序窗體)發送WM_PARENTNOTIFY消息,消息的wParam參數的低字部分為:WM_DESTROY,lParam參數為TWebBrowser控件的窗口句柄。我們可以響應該消息處理TWebBrowser的Close事件,代碼如下:
在窗體的定義添加申明:
procedure?WBClose(var?Msg:TMessage);message?WM_PARENTNOTIFY;
在實現部分添加具體代碼:
procedure?TForm1.WBClose(var?Msg:?TMessage);
begin
? ??if?Msg.WParamLo?=?WM_DESTROY?then?//對象被銷毀消息
????? ??if?UInt(Msg.LParam)?=?WebBrowser1.Handle?then?//WebBrowser1被銷毀
???????? ???Close;?//關閉窗體本身
end;
總結
以上是生活随笔為你收集整理的Delphi处理TWebBrowser的Close事件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TWebBrowser禁止弹出Alert
- 下一篇: 浅谈SQL中存储过程和自定义函数的区