- - PR -
VB.NETのWebBrowserコントロールで開いたページのボタンの操作
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2008-08-19 17:53
VB2008です。
WebBrowserコントロールで読み込んだページ内にあるボタンを押すにはどうしたらいいでしょうか。 HTMLの記述はこうなっています。 <button>OK</button> ボタンは<form>タグで囲まれておらず、idやnameもついていません。 どうかご教示お願いします。 | ||||
|
投稿日時: 2008-08-19 18:03
HtmlDocument::GetElementsByTagNameで探すとか。
JavaScriptのメソッド一つを呼び出してるだけなら直接HtmlDocument::InvokeScript使うとか。 | ||||
|
投稿日時: 2008-08-19 21:12
つぎのいずれかか、その合わせ技でやることが思いつきます。
(1) そのページの製作者に「name や id を付けてくれ」と頼む。 (2) GetElementsByTagName メソッドで取得する。複数取得できた場合は InnerText や InnerHtml などのプロパティーで "OK" を含むものを絞り込む。あるいは得られた List の中の何番目の要素かで判定する。 (3) Children プロパティーでひたすら DOM のツリー構造をたどる。(GetElementsByTagName だと子だけでなく孫までも取得してしまうので、使いづらいときがある。) (4) 私はやったことはないですが、おそらくボタンの位置(x, y)をピクセル単位で取得できる方法があると思うので、その位置で絞り込む。やらないほうが良いでしょう。 私は(2)と(3)でやっています。 #以下、追記。 ボタンの特定ではなくボタンの押し方ということでしょうか? クリックは、次のコードです。
[ メッセージ編集済み 編集者: unibon 編集日時 2008-08-19 21:16 ] |
1