ie 与 caption(100分)

  • 主题发起人 主题发起人 mumuwoyou
  • 开始时间 开始时间
M

mumuwoyou

Unregistered / Unconfirmed
GUEST, unregistred user!
方案1
重写twebbrowser的navigate2方法,使webbrowser调用navigate2时,是我重新定义的navigate2。
方案2
捕获webbrowser的url单击事件,利用statusbar的text得到url,然后调用navigate2方法,在新窗口中打开。

在运行的程序中隐藏caption,然后恢复caption

 
这位兄台要什么啊?俺看不懂啊!
 
是不是要在新窗口打开网页,怎样获得新URL?
我也想知道!
TO: mumuwoyou 如果解决了请告诉我好吗?先谢了!
EMail: zxtyhy@sina.com
 
似乎是强制定向到固定的url?
 
以下是写在twebbrowser的navigatebefore2事件中
var
tag:integer;
webbrowser:Tembeddedwb;//twebbrowser的增强控件
webtime:Ttimer;
doc:ihtmldocument2;
title:string;
frames:IHTMLFramesCollection2;

begin
if (sender as tembeddedwb).document<>nil then //只有网页完全引导了以后才能用doc。
begin
(sender as tembeddedwb).document.QueryInterface(ihtmldocument2,doc);
title:=doc.Get_title;//得到网页的title
frames:=doc.Get_frames;//得到网页的帧


if title<>'' then
if frames.length = 0 then //有几个帧length为几
begin
Cancel :=true;//使navigate2失效
webbrowser:=newpages('');//newpages是新建一个窗卡
tag:=webbrowser.Tag;//新建窗卡时我们要为每一个webbrowser设定一个唯一的tag值
webbrowser.Hint:=url;
webtime:=Ttimer.Create(self);
webtime.Tag:=tag;
webtime.Interval:=1000;
webtime.OnTimer:=timer;//ontimer事件在下面

end;
end;
end;

//ontimer事件
var
myurl:string;
i,tag:integer;
begin
tag:=(sender as Ttimer).tag;
for i:=0 to browserbar.PageCount-1 do
if browserbar.Pages.Controls[0].Tag =tag then
begin
myurl:=(browserbar.pages.Controls[0] as Tembeddedwb).hint;
(browserbar.Pages.Controls[0] as tembeddedwb).navigate(myurl);
(sender as Ttimer).Destroy;
end;
end;

可能还有bug,帮我找找;
 
不知所云。
 
请继续或结束
 
有人猜对他想干什么了么?
 
I Still 不懂。
 
请继续或结束
 
请继续或结束
 
多人接受答案了。
 
后退
顶部