- ベストアンサー
VBスクリプトで「お待ち下さい」メッセージ表示は可能?
VBスクリプトを用いて、フォルダ名の一括変更などの簡易的なソフトをつくっています。 時間がかかる処理をしている最中に、「処理中です お待ち下さい」というようなメッセージを表示させ、処理終了後に「完了しました」という終了メッセージへ切り替えて表示させることは可能なのでしょうか? MsgBox関数でできるかなと思って調べて見ましたが、できないようなので、質問させていただきました。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
VBScript のみではできないと思いますが、 IEを使ってそのようなことができると思います。 ---------------------------------------------------------------- Dim IE Set IE = WScript.CreateObject("InternetExplorer.Application") IE.Navigate "about:blank" While IE.busy: Wend While IE.Document.readyState <> "complete": DoEvents : Wend IE.Document.body.innerHTML = "<b id=""msg"">処理中です お待ち下さい</b>" IE.AddressBar = False IE.ToolBar = False IE.StatusBar = False IE.Height = 100 IE.Width = 300 IE.Visible = True WScript.Sleep(3000) '実際は時間の掛かる処理 IE.Document.getElementById("msg").innerHTML="完了しました" 'IE.Quit
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
#1>この方法というのは、他のソフトを利用するということでしょうか? IEの場合表示されている内容をDOMでアクセスして変更できます。 (また、スタイルを変更することで見栄えも変更することができます。) 全てのソフトでこのようなことが簡単にできるわけではありません。 Win32APIを駆使すれば他(ソフト)のウィンドウに表示されているものを変更できるかもしれませんが、このように簡単にはできません。 >メッセージだけを表示するスクリプトがあれば、似たようなことができてしまうのでしょうか? 質問の意味がよくわかりません
お礼
重ねてのアドバイス、ありがとうございます。 お礼が遅くなり、大変失礼致しました。 なるほど、IEは特別なわけですね。わかりました。 いろいろ試して見たいと思います。
補足
> 質問の意味がよくわかりません すいません。。ちょっと意味不明でしたね。 IEでできるのならば、メッセージだけ表示するスクリプトをつくって、処理スクリプトから表示スクリプトを読み出すことで、メッセージ表示を自由に扱えたりできるのかな~と思ったのでした。 でも、全てのソフトでできるわけではないということは、スクリプトではとてもできないと理解しました。
お礼
ご回答、ありがとうございます。 へえ~~、IEを使うことでできるのですか!なるほど。やってみたいと思います。 この方法というのは、他のソフトを利用するということでしょうか??ということは、メッセージだけを表示するスクリプトがあれば、似たようなことができてしまうのでしょうか?