如何在页面关闭时,关闭TWebBrowser(50分)

  • 主题发起人 主题发起人 nuaa.cs.zhanglu
  • 开始时间 开始时间
N

nuaa.cs.zhanglu

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟在编写浏览器时,使用多个TWebBrowser控件,现在有些页面有关闭窗口功能,
我希望在关闭窗口的时候获取该事件,不知应如何实现
 
使用embeddedwb, 它有专门的事件控制的
 
procedure ApplicationMessage(var Msg: TMsg; var Handled: Boolean);
在form create时
Application.OnMessage := ApplicationMessage;

function tfrmhtmlbrowser.GetVisibleWebBrowser: TEmbeddedWb;
var
wb: Tembeddedwb;
tmp: TControl;
begin
tmp := pagecontrol.ActivePage.Controls[0];
wb := (tmp as Tembeddedwb);
Result := wb;
end; //End GetVisibleWebbrowser

procedure tfrmhtmlbrowser.ApplicationMessage(var Msg: TMsg; var Handled: Boolean);
var
wb: tembeddedwb;
begin
WB := GetVisibleWebBrowser; //取当前webbrowser控件
if (Msg.message = WM_CLOSE) and (Msg.hwnd = Wb.Handle) then
begin
closebtnclick(Self);//关闭webbrowser后,把相应的ttabsheet删除
end
else
inherited;
end; //end applicaitonmessage
 
honghs,能告知Tembeddedwb的出处或下载地址吗?
 
新版大富翁真是烦死了,连别人的email都看不了
2373088,网址是:http://www.euromind.com/iedelphi/
 
谢谢honghs
 
其实监视 WB.onCloseQuery 更好.
 
截取WM_Close事件可以解决这个问题,我试过了!!!
 
接受答案了.
 
后退
顶部