人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

VB2005Expressで勉強中の者です。つぎのようなコードを書きたいのですがうまくゆきません。以下の動作をすべて自動でおこなう。1.Form1のWebBrowser1でYahoo!Japanのトップページを表示する。2 検索ワード入力用のテキストボックスに「ワルキューレ」と入力する。3.検索ボタンをクリックする(というイベントを起こす)ことによって検索結果画面に移行させる。1はできましたが、2でつまずいています。解法をご教示ください。WEBで検索しても、説明に使われているVBのバージョンが古かったり私の頭がお粗末だったりでした。

●質問者: crashtruck
●カテゴリ:コンピュータ
✍キーワード:JAPAN VB Web Yahoo! なう
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● nanamasuhoshi
●20ポイント

1.のとこで

http://search.yahoo.co.jp/search?p=%A5%EF%A5%EB%A5%AD%A5%E5%A1%B...

に飛ばすのはダメかな?

◎質問者からの返答

ダメなのです。すみません。


2 ● cx20
●100ポイント ベストアンサー

VB2005Express の環境で試してみました。

以下のような感じでいかがでしょう?

Public Class Form1
 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
 
 ' 1. Form1のWebBrowser1でYahoo!Japanのトップページを表示する。
 WebBrowser1.Navigate("http://www.yahoo.co.jp/")
 Do While (WebBrowser1.IsBusy Or WebBrowser1.ReadyState <> WebBrowserReadyState.Complete)
 My.Application.DoEvents()
 System.Threading.Thread.Sleep(50)
 Loop
 
 ' 2. 検索ワード入力用のテキストボックスに「ワルキューレ」と入力する。
 Dim elmWord As HtmlElement
 elmWord = WebBrowser1.Document.GetElementById("fp")
 If IsNothing(elmWord) Then
 Return
 End If
 elmWord.InnerText = "ワルキューレ"
 
 ' 3.検索ボタンをクリックする
 Dim elmSearch As HtmlElement
 elmSearch = WebBrowser1.Document.GetElementById("st")
 If IsNothing(elmSearch) Then
 Return
 End If
 elmSearch.InvokeMember("click")
 
 End Sub
End Class
◎質問者からの返答

完全な解答ありがとうございました。またよろしくおねがいします!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ