none
VB6+IE7でのWebBrowserの表示 RRS feed

  • 質問

  • VB6でWebBrowserコントロールを使ってHPを表示しています。

    例えば、yahooのHPを表示したときに、

    IE6までは左詰めで表示されていたのですが、IE7以降になると

    左詰めで表示されなくなりました。(センタリング表示?)

    IE7以降の設定で左詰めで表示させる方法があるのでしょうか?

    それともVB側で制御する??

    ご教示いただければ幸いです。

    2010年7月29日 2:34

回答

  • Visual Basic + Internet Explorer 6でも同じく微妙に左端が表示されなくなりました。

    原因は、初めにフォーカスが当たる検索用のテキストボックスを必ず表示するための様です。

    上記を確かめるために、無理やりフォーカスを外してスクロールさせてみました。
    検索のテキストボックスのフォーカスを外すことで、左上が表示されます。
    #非同期にすべきですが、テストと言うことで^^;

    Private Sub Command1_Click()
    Me.WebBrowser1.Navigate ("http://www.yahoo.co.jp/")
    While Me.WebBrowser1.Busy
     DoEvents
    Wend
    Me.SetFocus
    Me.WebBrowser1.Document.parentWindow.ScrollTo 0, 0
    
    End Sub
    
    
    
    2010年7月29日 8:50
  • VB から制御する方法としては、「表示中のドキュメントにスタイルシートを挿入する」という方法があります。

    http://soudan1.biglobe.ne.jp/qa3733533.html

     


    なかむら(http://d.hatena.ne.jp/griefworker)
    2010年7月29日 5:16

すべての返信

  • IE6までは左詰めで表示されていたのですが、IE7以降になると

    左詰めで表示されなくなりました。(センタリング表示?)

    家のアイコン(→いつもこのページからインターネットを始める)の表示ではなく「Yahoo!」のロゴが画面中央に来るということでしょうか?

    数台残ってたIE7で試してみたのですが、やはり左端にある家のアイコンが表示されていたのでひょっとしたらご質問を読み違えているかもしれません。

    もし、Yahoo!のロゴが中央にくるということでしたら、以下の2つを試しても同じ状況でしょうか?
    ・ツール→インターネットオプション→<全般>タブ→ユーザー補助ボタンでユーザースタイルシートが割当たっていないか
    ・ツール→アドオンの管理でアドオンを無効にする

    あとは、ツール→インターネットオプション→<詳細設定>タブ で画面下部にあるリセットボタンを押すとIEの設定が初期化できます。

    2010年7月29日 4:22
  • VB から制御する方法としては、「表示中のドキュメントにスタイルシートを挿入する」という方法があります。

    http://soudan1.biglobe.ne.jp/qa3733533.html

     


    なかむら(http://d.hatena.ne.jp/griefworker)
    2010年7月29日 5:16
  • Yahooの先頭画面で言えば、 「オフィス版」と「YAHOO BB」のアイコンの中間ぐらいの位置から

    左端に表示されてしまします。

    お気に入りを表示させたときに、お気に入りの部分が左側に表示されますが、お気に入りの幅を最小に

    したぐらいの幅分ぐらいです。 

    解像度は1024×768 で表示していて、全画面でWebBrowserコントロールで表示させると問題

    ありませんが、 幅を半分のエリア(表示エリアは512×768)をWebBrowserコントロールで表示させると、

    左端から表示されなくなります。表示幅が足りないため??ずれる??

     

     

    2010年7月29日 5:42
  • 解像度は1024×768 で表示していて、全画面でWebBrowserコントロールで表示させると問題

    ありませんが、 幅を半分のエリア(表示エリアは512×768)をWebBrowserコントロールで表示させると、

    左端から表示されなくなります。表示幅が足りないため??ずれる??


    Visual Basic + Internet Explorer 6でも同じく微妙に左端が表示されなくなりました。

    原因は、初めにフォーカスが当たる検索用のテキストボックスを必ず表示するための様です。

     

    2010年7月29日 8:46
  • Visual Basic + Internet Explorer 6でも同じく微妙に左端が表示されなくなりました。

    原因は、初めにフォーカスが当たる検索用のテキストボックスを必ず表示するための様です。

    上記を確かめるために、無理やりフォーカスを外してスクロールさせてみました。
    検索のテキストボックスのフォーカスを外すことで、左上が表示されます。
    #非同期にすべきですが、テストと言うことで^^;

    Private Sub Command1_Click()
    Me.WebBrowser1.Navigate ("http://www.yahoo.co.jp/")
    While Me.WebBrowser1.Busy
     DoEvents
    Wend
    Me.SetFocus
    Me.WebBrowser1.Document.parentWindow.ScrollTo 0, 0
    
    End Sub
    
    
    
    2010年7月29日 8:50
  • Chukiさん ありがとうございます。

    Me.WebBrowser1.Document.parentWindow.ScrollTo 0, 0

    によって、思っていた表示になりました。

    2010年8月3日 9:14