tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルIE上の一部分をウェブブラウザに表示させるには?
記事No15253
投稿日: 2011/07/09(Sat) 15:14
投稿者DF
VB6,WinXP

IE上に表示されているページを、そのまま(又は一部分を)ウェブブラウザコントロールに表示するには、
どうしたらいいでしょうか?

下のようにしてみたのですが、エラーが出てだめでした。

Private Sub Command1_Click()

    Set IE = CreateObject("InternetExplorer.Application")
    IE.Navigate2 "・・・・"
    IE.Visible = True
    
    While IE.Busy Or (IE.ReadyState <> READYSTATE_COMPLETE)
        DoEvents
    Wend
    
    Set WebBrowser1 = IE 'エラーが出る
    Set WebBrowser1.Document = IE.Document 'エラーが出る
    Set WebBrowser1.Document.body = IE.Document.body 'エラーが出る
    
    Set IE = Nothing

End Sub

Navigateメソッドで最初から読み込ませるしかないのでしょうか?
IEのページ全体ならそれでもいいのですが、ページの一部分だけをウェブブラウザコントロールに表示したい場合、
これだとうまく行きません(例えば、IE上のページの、ある一つのテーブルだけをウェブブラウザコントロールに表示したい場合など)。

下のように innerHTML を代入する方法でやってみたのですが、
WebBrowser1.document.body.innerHTML = IE.document.elementFromPoint(x, y).parentElement.innerHTML
このようにすると、座標xyにあるIEのエレメントをウェブブラウザに表示できたのですが、
画像とかが表示されませんでした(画像のパスが相対パスになっているので)。
また、スタイルシートなども適用されないのでただテキストが表示されるだけでした。

IE上の一部分(一つのエレメント)を完全な形でウェブブラウザに表示させるにはどうすればいいでしょうか?
どうかよろしくお願いいたします。

[ツリー表示へ]