delphi2007 教程

delphi2007 教程

首页 新随笔 联系 聚合 管理
  1013 Posts :: 0 Stories :: 28 Comments :: 0 Trackbacks
WebBrowser怎么在BeforeNavigate2获得完整的URL VCL组件开发及应用
http://www.delphi2007.net/DelphiVCL/html/delphi_20061225094005138.html
我的url地址类似http://www.my.com/isis/a.htm?args=abc  
  在WebBrowserBeforeNavigate2   中参数传入的URL只有http://www.my.com/isis/a.htm这一段,?号后后面的无法获得,我要用不同的参数区分不同的地址,请问哪位高手知道怎么获得http://www.my.com/isis/a.htm?args=abc这个完整的URL地址吗  
  我要在BeforeNavigate2事件获得这个url然后调用不同的程序。

//可以得到这个URL  
  //你是怎么测试的?  
   
  procedure   TForm1.WebBrowser1BeforeNavigate2(Sender:   TObject;  
      const   pDisp:   IDispatch;   var   URL,   Flags,   TargetFrameName,   PostData,  
      Headers:   OleVariant;   var   Cancel:   WordBool);  
  begin  
      Caption   :=   URL  
  end;  
   
  procedure   TForm1.Button1Click(Sender:   TObject);  
  begin  
      WebBrowser1.Navigate(http://www.my.com/isis/a.htm?args=abc');  
  end;  
 

这样是可以,如果你装载一个叫index.htm的页面,然后这个页面中有这样一个连接,你点击的时候就获得不了

我需要用页面做一个导航,URL是一个页面中的连接,不是用WebBrowser的Navigate方法发出的

use   linkes   to   javascript   functions  
  http://www.delphidabbler.com/articles?article=22&part=3

需要拦截的url一半有一定的规则,比如包含插件名http://a/a.dll?cccc  
  先定义一个类变量   string   f_CurrStatusText,   在WebBrowserStatusTextChange中给它赋值  
  然后在WebBrowserBeforeNavigate2中使用f_CurrStatusText处理,不使用原来的URL即可

posted on 2008-09-19 13:43 delphi2007 阅读(2008) 评论(0)  编辑 收藏 引用
只有注册用户登录后才能发表评论。