[三流解説IEのトップページへ]
/ [IE プロパティの一覧へ 戻る]
.Busyプロパティ とは
プロパティ .Busy とは、機械和訳だと 忙しい です。(あまり意味無いか)
三流プログラマーの勝手な解釈・方言だと:
.Busy = True が 処理中(忙しい)
.Busy = False が ヒマなので、処理待ち、処理完了かなぁ。
よく私が使うIEの表示待ちは、
While objIE.Busy = True 'IEが忙しい(.Busy=True)あいだループする
DoEvents 'Doeventsは重いので嫌いな人居るけど
Wend
みたいに objIE.Busy = True でループさせてます。
正式な解説・説明はMSDNで:[.Busy Property]を見てください。
.Busy を 使用した三流サンプル
.Busyプロパティ を 使用した三流サンプル を 紹介します
.Busy プロパティ の テスト
http://www.youtube.com/watch?v=uMDCjb7hjug
よく私が使うIEの表示待ちは、
While objIE.Busy = True 'IEが忙しい(.Busy=True)あいだループする
DoEvents 'Doeventsは重いので嫌いな人居るけど
Wend
みたいに objIE.Busy = True でループさせてます。
でも、 objIE.Busy = True だけだと、完全に待てない、そんなテストをしてみます。
'参照設定 Microsoft Internet Controls(Microsoft Browser Helpers)
'参照設定の方法は、 http://www.ken3.org/cgi-bin/group/vba_ie_object.asp をみてください。
Sub ie_test() 'ページの移動後、 .Busy プロパティを見る
'IEの起動
Dim objIE As InternetExplorer '変数を定義します。
Set objIE = CreateObject("InternetExplorer.Application") 'オブジェクトを作成します。
objIE.Visible = True '可視、Trueで見えるようにします。
'表示位置とサイズを調整する
objIE.FullScreen = False '※まぁ、わざわざ設定しなくてもいいけど。
objIE.Top = 100 '左上 上位置
objIE.Left = 100 '左上 左位置
objIE.Width = 800 '横幅
objIE.Height = 600 '高さ
'XXXバー、外観・外枠の調整。
objIE.Toolbar = True 'タブの切り替えで必要なので、ツールバーを表示にする
objIE.MenuBar = False 'メニューは非表示にする
objIE.AddressBar = True 'URLなど アドレスバーは確認のため、表示する
objIE.StatusBar = True '一番下のステータスバーを表示。
'.gohome で ほーむを表示する。
objIE.GoHome
'ページの表示を待ち
Dim strWORK As String '前回表示文字
Dim strBusy As String '秒とBusyを文字列にする
strWORK = ""
While objIE.Busy '.Busy=Trueの間まわる。
strBusy = Second(Now) & ":" & objIE.Busy '秒と.Busyを作成
If strWORK <> strBusy Then '前回表示した文字列と比較して違ったら
Debug.Print strBusy '秒とBusyを表示する。
strWORK = strBusy '表示した文字を保存する。
End If
DoEvents
Wend
Debug.Print objIE.Busy 'ループを抜けた後、最後に表示する。
End Sub
|
'↑から少しテスト方法を変えて、5秒間ループさせ、
'その間、.Busyの値が変化したら、表示してみました。
Sub ie_test() 'ページの移動後、5秒間 .Busy プロパティを見るテスト
'IEの起動
Dim objIE As InternetExplorer '変数を定義します。
Set objIE = CreateObject("InternetExplorer.Application") 'オブジェクトを作成します。
objIE.Visible = True '可視、Trueで見えるようにします。
'表示位置とサイズを調整する
objIE.FullScreen = False '※まぁ、わざわざ設定しなくてもいいけど。
objIE.Top = 100 '左上 上位置
objIE.Left = 100 '左上 左位置
objIE.Width = 800 '横幅
objIE.Height = 600 '高さ
'XXXバー、外観・外枠の調整。
objIE.Toolbar = True 'タブの切り替えで必要なので、ツールバーを表示にする
objIE.MenuBar = False 'メニューは非表示にする
objIE.AddressBar = True 'URLなど アドレスバーは確認のため、表示する
objIE.StatusBar = True '一番下のステータスバーを表示。
'.gohome で ほーむを表示する。
objIE.GoHome
'ページの表示を待ち
Dim time5 As Date '5秒後
Dim strSS As String '表示する秒
Dim strWORK As String '現在の秒を保存する
time5 = DateAdd("s", 5, Now()) '5秒後をDateAddで計算して代入
strSS = "" '表示する秒を初期化
While Now <= time5 '現在時刻Nowが計算した5秒後以下の間ループ
strWORK = Second(Now) & ":" & objIE.Busy '秒と.Busyを代入
If strWORK <> strSS Then '表示した文字と違ったら、
strSS = strWORK '表示文字を新たにセット
Debug.Print strSS 'Debug.Printでイミディエイトへ表示
End If
Wend
objIE.Quit
End Sub
|
動作結果と動画解説 http://www.youtube.com/watch?v=uMDCjb7hjug
.Busy 関連項目 リンク
三流君が .Busy の 関連項目 を 紹介します
おっと、その前に正式な場所は(繰り返し紹介すると) MSDNで:[.Busy Property]を見てください。
Googleを使用して検索する
読者の声:三流君の説明・解説じゃ .Busyプロパティ が よくわからなかったから、Googleを使って、自分で検索します。
三流君:残念です。あっ、下記にGoogleの検索窓を設置しました。
よく使われる変数名 : oIE,MyIE,objIE
と
オブジェクトの指定として : InternetExplorer と WebBrowser
を指定しました。※この指定で検索するとサンプルが拾いやすいと思います。
ページフッター リンクや広告、質問送信など
三流解説を読んでいただき、どうもです。ここから下は、三流君宛のメッセージ送信や 三流君のホームページの紹介・案内です
目的の情報が見つかったか?少々心配しつつ、、、※質問や感想は、気軽に送ってくださいね。
質問や要望など メッセージを送る(三流君に連絡する)
三流プログラマーのKen3 が 皆さんの質問にお答えします
と カッコつけて言っても、実力不足ですべての質問に回答することはできないのが現実なのですが、できる範囲で 三流的な逃げ手 や 解決方法 を探します(回答します)。
感想や質問・要望・苦情など 三流君へメッセージを送る。
時間的余裕のある要望・質問・苦情の場合は、下記のフォームからメッセージを送ることができます。
急ぎで連絡がほしい、そんな時は:[三流君連絡先]に連絡してください。
[トップページへ 戻る]
/ [プロパティの一覧へ 戻る]