- 題名: Webbrowserのタブ(TabPages)の情報について
- 日時: 2011/08/01 22:19:41
- ID: 28827
- この記事の返信元:
- (なし)
- この記事への返信:
- [28829] Re[1]: Webbrowserのタブ(TabPages)の情報について2011/08/02 7:32:46
- ツリーを表示
>以下のgifボタンをクリックが出来ていませんでした。
>(もしくは、クリックは出来ているが、新しいTabPageが立ち上がらないためか?)
どちらか絞り込めませんか?
If HtmlElement.GetAttribute("src")= "http://hogehoge.com/icon_button.gif" Then
Debug.Print("ボタン見つけた")
HtmlElement.InvokeMember("click")
Exit For
End If
などとすればボタンを見つけることができたのかそうでないのか分かると思います。
>'リロード完了待ち
この処理はできればやめた方がいいです。
永久ループの可能性もありますし,DoEventの間に何が起こるかわかりません。
DocumentComletedイベントに記述すべきだと思います。
毎回イベントの処理が実行されると困る場合にはフラグとIF Thenで場合分けを
したり,AddHandler,RemoveHandlerで必要な時だけ呼び出されるようにしたり
したらよいと思います。
申し訳ありませんが,プログラムの目的というか,何がしたいのか今ひとつよくわかりません。
検索の自動化や,巡回の自動化がしたいのでしょうか?
分類:[.NET]
2011/08/01(Mon) 23:03:43 編集(投稿者)
2011/08/01(Mon) 23:01:26 編集(投稿者)
2011/08/01(Mon) 23:00:21 編集(投稿者)
現在、Webbrowserを TabControlを使用するようにしています。
TabControlのTabPages1にHPを表示させ、target="_blank"のリンクをクリックしたらTabPages2に表示させるようにしています。
ここまではいいのですが、
TabControl1.TabPages.Remove(TabControl1.SelectedTab)
でTabPages2を削除した後、
WebBrowser.Document.Title.ToString()
を取得すると、削除したTabPages2のDocument.Titleが表示されてしまいます。
TabPages1は、まだ残っているので、TabPages1のDocument.Titleを取得したいのですが、どうしたらよいでしょうか?
方法として、TabPages2の削除前に、
TabControl11.SelectedIndex = 0
として、TabPages1を選択しても変わりませんでした。
TabPages2の情報を完全に削除するか、前の情報を消すためWebBrowser.Documentの再読込をしたいのです。
こちらのプログラムの過程の事情で、target="_blank"のリンクをクリックの前にTabPages1のWebBrowser.Documentの取得したり、WebBrowser自体のの再読込などはしたくありません。
他に方法ありますでしょうか?
タブの実装については、YASさんのサンプルコードを使わせて頂いています。
VB2005のWebBrowserコントロールにNewWindow2イベントを拡張する
http://homepage1.nifty.com/yasunari/VB/VB2005/WebBrowserNewWindow2Event.htm