VB2005にてプログラムしております。
WebBrowser内にて表示したページでID、PASSを自動入力、ログインするというプログラムですが、
-------------------------------------------------------------
Dim IDCODE As String = TextBox1.Text
Dim PASSCODE As String = TextBox2.Text
'文字列で指定したURLに飛ぶ
WebBrowser1.Navigate("https://XXXXXXXXX.ne.jp/")
'表示終了まで待つ
??????
‘WebBrowser1へID、PASS入力処理
-------------------------------------------------------------
上記の ??????
部分に表示待ちの処理をするコードを入れると思うのですが、
With WebBrowser1
Do While .IsBusy = True
Loop
Do While .ReadyState <> "complete"
Loop
End With
を入力すると読み込み途中で止まってしまうみたいです。
なにかいい方法がありますか?
No.2ベストアンサー
- 回答日時:
Windowsの場合コントロールの描画などを待つなら メッセージループをとめない工夫が必要です
ひとつのプロシージャ内で待機するのであれば
Application.DoEvents() などをつかって メッセージ処理をWindowsにさせましょう
Do Until .ResyState = WebBrowserReadyState.Complete
Application.DoEvents()
Loop
といった具合です
または WebBrowserのDocumentCompletedイベント側で処理するといった手法もありますよ
ありがとうごさいます。大変参考になりました。
DocumentCompletedイベント側で描画終了の変数を発行する方が描画終了のタイミングをつかみやすいので以下のようにして見ました。
-----------------------------
Private Sub WebBrowser1_DocumentCompleted
Label10.Text = ("Login")
Private Sub Button2_Click
'文字列で指定したURLに飛ぶ
WebBrowser1.Navigate("https://XXXXXXXXX.ne.jp/")
‘Loginの表示が出るまで待つ
Do Until Label10.Text = ("Login")
Application.DoEvents()
Loop
-----------------------------
No.1
- 回答日時:
'やってみた。
なお、Form1にWebbrowser1を貼り付けただけの状態でテストPublic Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Show()
Dim IDCODE As String = "himajin100000"
Dim PASSCODE As String = "pass"
'文字列で指定したURLに飛ぶ
Me.WebBrowser1.Navigate("http://www.yahoo.co.jp")
'ここでRefreshしないとReadyStateがWebBrowserReadyState.Uninitialized = 0になったままらしく、ループを抜けられない。
Me.WebBrowser1.Refresh()
With Me.WebBrowser1
Do While .IsBusy = True
Me.Text = "busy"
Loop
Do While .ReadyState = WebBrowserReadyState.Complete
Me.Text = CStr(.ReadyState)
Loop
Me.Text = "Finished"
End With
End Sub
'ここでRefreshしないとReadyStateがWebBrowserReadyState.Uninitialized = 0になったままらしく、ループを抜けられない。
この部分参考になりました。
ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) 入力ボックスが繰り返しポップアップして止まらない。 下記コードでファイル名の変更をしたいのですが、変 1 2022/09/08 11:27
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- Excel(エクセル) このコードに追記事項の仕方を教えて下さい。 以下のコード内容に出てくる。セルH3が空白の場合、エラー 4 2023/08/03 00:22
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
フォームでPDFを表示させたいときは
Visual Basic(VBA)
-
VBAのWebBrowserコントロールで、ページが確実に表示された後に次の作業が行われるようにしたいです。
Visual Basic(VBA)
-
WebBrowserでPDF表示でのトラブル
Visual Basic(VBA)
-
-
4
WebBrowser内のフォームをsubmitする(VB2008)
Visual Basic(VBA)
-
5
WebBrowserでOfficeファイル等を表示する事ができません・・・
Visual Basic(VBA)
-
6
エクセルでエラーが出て困っています。
Excel(エクセル)
-
7
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
8
VBA・WebBrowserコントロールで全て自動の話ですが、ボタンをクリック→ページ移動→テキストボックスに入力ができません。
Visual Basic(VBA)
-
9
webbrowserの読込完了が反応しない
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
小数点を含む数値かどうか判断...
-
DoEvents関数って何?
-
Excelでのセル内容の高速消去方法
-
win10で、正確な待ち時間の作り方
-
SQLの速度をあげるには・・・
-
テキストファイルの空行をスキ...
-
エクセルVBA 時間抜けの取得
-
符号付きにすべきか、符号なし...
-
絶対パスの取得について
-
Excel VBA データ削除の高速化
-
再帰処理について
-
Dijkstra法のデータ構造による...
-
プログラミングの授業でPython...
-
VBAでリアルタイムで計算結果を...
-
実行時のCPU使用率を増やしたい
-
6x6ぼかしマスクをかけるプログ...
-
逆ポーランド記法における単項...
-
ナップザック問題?をエクセル...
-
Macターミナルで実行中のプログ...
-
バックグラウンドのプロセスの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelでのセル内容の高速消去方法
-
DoEvents関数って何?
-
win10で、正確な待ち時間の作り方
-
小数点を含む数値かどうか判断...
-
SQLの速度をあげるには・・・
-
絶対パスの取得について
-
Excel VBAにて、2GB超の点群デ...
-
VBでの簡易電卓の作成(減算方...
-
C言語:関数を使うメリットとデ...
-
テキストファイルの空行をスキ...
-
プログラム上のCPU稼働率低減に...
-
Excel(VBA)でSetTimer関数を使...
-
ナップザック問題?をエクセル...
-
If Not c Is Nothing Then ~延...
-
プログラム 擬似コードとはどん...
-
基本情報技術者試験詳しい方へ...
-
ノットイコールを教えて下さい
-
符号付きにすべきか、符号なし...
-
C言語 時刻差分の算出方法
-
実行時のCPU使用率を増やしたい
おすすめ情報