该页面中的一些图片,点了后,会进入下个页面,怎么点击。
另外,使用navigate方法,参数是这个图片对应的链接访问无效,还是显示之前点这个图片的页面。
是不是和什么cookie有关?请高手指点。

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
      WebBrowser1.Navigate('http://www.baidu.com');
    end;procedure TForm1.Button2Click(Sender: TObject);
    var
      E,I:IHTMLElement;
      ID: string;
    begin
      ID := '你能知道的ID';
      //<img id="ID" src="\Images\thefile.gif" align="absbottom">
      //就是这里的ID
      //I:=
      I := (WebBrowser1.Document as IHTMLDocument2).images.item(ID,0) as IHTMLElement;
      //两个都试一下
      E := (WebBrowser1.Document as IHTMLDocument2).all.item(ID,0) as IHTMLElement;
      if Assigned(E) then
        E.onclick;
      if Assigned(I) then
        I.onclick;
    end;procedure TForm1.Button3Click(Sender: TObject);
    var
      i: integer;
      T: OleVariant;
    begin
      T := WebBrowser1.Document;
      for i := 0 to T.all.Length -1 do
      begin
        if T.all.item(i).tagName = 'INPUT' then
        begin
          if T.all.item(i).type = 'submit' then
          begin
            T.all.item(i).click;
            Exit;
          end;
        end;
      end;
    end;
      

  2.   

    第二种方法Button3Click 模拟的是 找到百度的 百度搜索, 提交找到结果第一种方法Button2Click 模拟的是 找到百度某一个ID的图片, 提交打开链接你执行一下,就知道怎么写你的程序了。
    记得:Uses SHDocVw, MSHtml;
      

  3.   

    我uses MSHTML,说:
    [Error] UnitMain.pas(78): Identifier redeclared: 'MSHTML'
    是不是要装什么库啊?
      

  4.   

    哦,不是没有,是我写了两次。呵呵。
    没仔细看,明明是redeclared。
      

  5.   

    行了吗,我测试的没问题,先btn1打开baidu 然后 输入要查找的内容, btn3就找到结果了至于btn2吗,你得知道 代码中的控件id才行