リンクが新しいウィンドウで開くように設定されていたらInternet Explorerで開かれる

タグの編集
投稿者 Free  (学生) 投稿日時 2012/12/28 16:58:25
タイトルにも書いたのですが、サイトを見ていてリンクページに飛ぶときに新しいウィンドウで開くようにされている時にInternet Explorerで開くのではなく、現在作成中のFree Browserで開くようにしたいのですが方法はあるでしょうか??
投稿者 魔界の仮面弁士  (社会人) 投稿日時 2012/12/28 18:59:04
Free Browser というものがどんな物なのか分からないので回答しにくいですが、
もしも WebBrowser をお使いならだとすれば、COM 版の NewWindow2 イベントを使うことで
自前の WebBrowser 上に表示させることができます。


具体的には、NewWindow2 イベント引数の ppDisp に、別途用意した
WebBrowser を渡すことで、そのページを表示できるという物です。


とはいえ、WebBrowser を使っていたのだとしても、どのバージョンのVB開発環境を
利用されているのかが分からないので、やはり具体的な回答は付け難いです…。
VB4 以下の場合、VB5~VB6 の場合、VB.NET 2002~2003 の場合、VB2005以降の場合とで、
微妙にコードが変わってきたりしますので。


とりあえず、最近のバージョンの VB で WebBrowser を使っているのだとすれば、
下記を参考にしてみてください。
http://rucio.cloudapp.net/ThreadDetail.aspx?ThreadId=2568
投稿者 Free  (学生) 投稿日時 2012/12/28 20:42:29
Free Browserはタブ型ブラウザで作成しています。

VBは2010です。

こんな感じでしています
 Dim Browser As New WebBrowser
        Dim newTabPage As New TabPage("")
        TabControl1.TabPages.Add(newTabPage)
        Browser.Name = "Web Browser"
        Browser.Dock = DockStyle.Fill
        Browser.Navigate("http://www.yahoo.co.jp/")
        Browser.ScriptErrorsSuppressed = False
        newTabPage.Controls.Add(Browser)
        AddHandler Browser.ProgressChanged, AddressOf Loading
        AddHandler Browser.DocumentCompleted, AddressOf Done

        TabControl1.SelectedTab = newTabPage

タブページを作成してその中にWebBrowserを作成しています
投稿者 魔界の仮面弁士  (社会人) 投稿日時 2012/12/29 02:29:04
であれば、先に紹介した方法で問題なさそうですね。