我想通过程序来将焦点定位在WebBrowser控件中的显示页面中的一个输入框中(任意页面中子窗口也可以),但在VB中有WebBrowser.Document.Body,而在Delphi 7中没有,不知道为什么。   另一个难点是我要打印WebBrowser中的网页,我的程序如下:
with printer do
begin
  BeginDoc;
  WebBrowser1.PaintTo(Handle,10,10);
  EndDoc;
end;
但最后打印出来的是空白页,怎么回事?我该怎么做呢????

解决方案 »

  1.   

    var  HtmlDocument:IHTMLDocument2;
    begin
     HtmlDocument:= IHTMLDocument2(WebBrowser1.Document);
     然后你就可以像在脚本中控制Document一样在程序中控制HtmlDocument了
    end;
      

  2.   

    楼上大侠能否说得更具体一点?我还是不太懂,IHTMLDocument2能控制让页面中哪一个输入框获得焦点吗?还有怎么控制打印呢? 也请介绍一些相关有用的资料给我参考(因我正做一项目急用),先在这里谢过Eastunfail大侠啦!!!
      

  3.   

    TEXT等控件都有Focus()方法。调用就可以了。
      

  4.   

    打印WebBrowser中的网页很简单:
    try
        Web_liulan.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_DODEFAULT);
      except
        on EoleException do
        begin
          Application.MessageBox('无法打印,请查看打印机的连接。','系统提示',MB_OK+MB_ICONINFORMATION);
          exit;
        end;
      end;//end try
      

  5.   

    谢谢各位朋友,我自己已经找到更详细的方法了,推荐大家对WebBrowser感兴趣的可以到google上搜TWebBrowser,其中有一篇讲WebBrowser的文章非常经典,让我收益非浅。试试很容易就可以找到的。