window.openで開いたウインドウのボタンをクリックするには?

解決


さち  2006-04-03 08:00:49  No: 130865

はじめまして。過去ログを見て、
下記の方法で「aaa.html」のボタンを押すことはできたのですが
その後で、window.openで開いた「bbb.html」にあるボタンを
クリックしたい場合はどうしたらいいのでしょうか?

環境はWindows2000/XP、VB6です。
よろしくお願いいたします。
-----------------------------------------------------------------
Private WithEvents ie As SHDocVw.InternetExplorer

Private Sub Command1_Click()
    Dim url As String
    Set ie = New SHDocVw.InternetExplorer
    ie.Navigate "http://www.***/aaa.html"
    ie.Visible = True

    Dim objTarget       As Object
    Dim objInput        As Object
    Set objInput = ie.Document.getElementsByTagName("INPUT")
    For Each objTarget In objInput
        If objTarget.Value = "検索" Then
                objTarget.Click    'ここで「bbb.html」が開く
                Exit For
        End If
    Next

End Sub
-----------------------------------------------------------------
■aaa.html

<SCRIPT Language="JavaScript">
function NewWindow(){
    var url;
    url = "http://www.***/bbb.html";
    window.open(url, "","width=400,height=200,status=no,scrollbars=yes,directories=no,menubar=no,resizable=yes,toolbar=no");
</SCRIPT>
<!-- 省略 -->

<input type="button" value="検索" onClick="NewWindow()">
-----------------------------------------------------------------
■bbb.html
<!-- 省略 -->
<input type="button" value="戻る">
-----------------------------------------------------------------


魔界の仮面弁士  2006-04-03 19:08:34  No: 130866

window.open() メソッドの戻り値は、新たに開かれた window への
参照を返しますので、本来は、そちらを使うべきでしょう。

で、もしも html 側の内容を変更できないのであれば、表示された
ウィンドウのハンドルをどうにかして捕らえて、そこから
http://www.mvps.org/emorcillo/en/code/vb6/iedom.shtml
のように、HTML DOM を取得して操作する事になるかと。


さち  2006-04-04 08:01:21  No: 130867

魔界の仮面弁士さん、お返事ありがとうございます。

html 側の内容は変更できないので、ウィンドウのハンドルの
捕らえ方と、教えていただいた URL のサンプルを参考にして
HTML DOM の取得の仕方を勉強したいと思います。

もう一つ質問なのですが、
これは「bbb.html」で showModalDialog でダイアログを開いて
そのダイアログにあるボタン等を操作する場合も、同じ考え方を
すればいいのでしょうか?


さち  2006-04-04 08:49:18  No: 130868

すみません Visual Basic Q&A掲示板 の方を見たら、
WebBrowserのWeb ページダイアログをコントロールする方法の Q&A が
ありました。

WebBrowserのWeb ページダイアログをコントロールしたい
http://madia.world.coocan.jp/cgi-bin/VBBBS/wwwlng.cgi?print+200603/06030054.txt

とりあえず、ウィンドウのハンドルの捕らえ方を勉強してみます。


さち  2006-04-05 08:44:15  No: 130869

まだサンプルコードを見ている途中ですが、
頑張ればできると思うので、解決とさせていただきます。

魔界の仮面弁士さん、本当にどうもありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加