IEをアクティブにしてキーを送るには

解決


itou  2007-04-26 01:21:00  No: 136224

VB6 Win98です。
インターネットエクスプローラをアクティブにしてブラウザの文字を全て選択したいと思っています。

appactivateでは、タイトルの先頭の文字が一定していないので、アクティブに
することが出来ません。どうしたらよいでしょうか?

文字の送信はsendkeys "^A" & "^C"とする予定です。


魔界の仮面弁士  2007-04-26 01:40:28  No: 136225

ExceWB メソッドで、OLECMDID_SELECTALL を指定するとか。

http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200408/04080066.txt
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi?print+200501/05010055.txt


itou  2007-04-26 03:16:36  No: 136226

ご回答ありがとう御座います。

WebBrowser1の箇所で変数が定義されていませんとエラーが出るのですが、
ブラウザーコントロールとかを追加することが必要でしょうか?

参照設定やコンポーネントを見てもMicrosoftブラウザコントロールみたいなものが見当たらないのですが、どのコンポーネントの追加が必要でしょうか?

初歩的な質問ですいません。


itou  2007-04-26 04:56:37  No: 136227

マイクロソフトのページで発見できましたのでこれから試してみます。


itou  2007-04-26 05:09:57  No: 136228

現在以下のようにプログラムしています。

Private Sub Form_Click()

    WebBrowser1.Navigate2 "http://www.google.co.jp"
       
    WebBrowser1.SetFocus
    WebBrowser1.Document.body.Focus
        '全選択して
    WebBrowser1.ExecWB OLECMDID_SELECTALL, OLECMDEXECOPT_DODEFAULT
'    Clipboard.Clear
    'それをコピー
    WebBrowser1.ExecWB OLECMDID_COPY, OLECMDEXECOPT_DODEFAULT
    
    MsgBox Clipboard.GetText(vbCFText)
    
End Sub

これで、グーグルのページはコントロールに表示されたのですが、ページを表示できませんという長いエラーメッセージがダイアログで表示されてしまいます。
メッセージボックスも反応がありません。またテキストが取れていないみたいです。何処がおかしいでしょうか?


魔界の仮面弁士  2007-04-26 06:43:46  No: 136229

> WebBrowser1の箇所で変数が定義されていませんとエラーが出るのですが、
WebBrowser コントロールでも、InternetExplorer オブジェクトでも、
基本的な操作は一緒かと。

> ページを表示できません
Navigate2 の後、すぐにコピー処理を実行してはいませんか?
ページがロードされてから処理してみてください。

たとえば、読込完了時には、DocumentComplete イベントが発生しますので、
このイベントの中でコピー処理を行うようにしてみるとか。


itou  2007-04-26 07:46:38  No: 136230

魔界様ありがとうございます。

意味がわからないので省略していたのですがそういうことなのですか。


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

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






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