#navi(../)
* メッセージボックスにアイコンを表示する方法 [#xe0f313d]
VBScriptのMsgBox関数で簡単にメッセージボックスを表示することができます。~
MsgBoxに文字列を引数として渡すだけだと、下のメッセージダイアログボックスのように引数で渡した文字列とOKボタンが表示されます。
#ref(01.gif)

以下にMsgBox関数で警告やインフォメーションのアイコンを表示したりメッセージボックスのタイトルを指定する方法を以下に記します。

#contents
#htmlinsertpcsp(win-top.html,win-sp.html)

* 関連資料 [#u4b65502]
-[[タスクスケジューラで起動するVBScirptのMsgBox代替・WScript.Shell.Popup>WSH/タスクスケジューラで起動するVBScirptのMsgBox代替・WScript.Shell.Popup]]
-[[WSHでメッセージとテキストボックスを表示する・InputBox>WSH/メッセージとテキストボックスを表示する・InputBox]]

* MsgBox関数の構文 [#xf2edf7d]
MsgBox関数の構文は以下のようになります。~
メッセージ以外にアイコンの表示やYes/Noボタンにしたり、タイトルを表示することができます。
 MsgBox ダイアログボックスに表示する文字列,ボタンの種類,ダイアログボックスのタイトル
MsgBoxの引数には他にもヘルプファイルの指定やコンテキスト番号を指定することもできます。~
本資料ではヘルプファイルの指定およびコンテキスト番号の指定に関しては記述していません。

* MsgBox関数の引数について [#bbd94ce4]
上記のボタンの種類について以下に記します。~
ボタンの種類となっていますが、各種値を指定することにより警告やインフォメーションアイコンを表示することができます。
|定数|値|説明|
|vbOKOnly |0 |[OK] ボタンのみ表示|
|vbOKCancel |1 |[OK] と [キャンセル] ボタンを表示|
|vbAbortRetryIgnore |2 |[中止][再試行] [無視]の3つのボタンを表示|
|vbYesNoCancel |3 |[はい][いいえ] [キャンセル] の 3 つのボタンを表示|
|vbYesNo |4 |[はい] [いいえ] ボタンを表示|
|vbRetryCancel |5 |[再試行]  [キャンセル] ボタンを表示|
|vbCritical |16 |警告メッセージ アイコンを表示します。|
|vbQuestion |32 |問い合わせメッセージアイコンの表示|
|vbExclamation |48 |注意メッセージアイコンの表示|
|vbInformation |64 |情報メッセージアイコンの表示|
|vbDefaultButton1 |0 |第1ボタンを標準ボタンにする|
|vbDefaultButton2 |256 |第2ボタンを標準ボタンにする|
|vbDefaultButton3 |512 |第3ボタンを標準ボタンにする|
|vbDefaultButton4 |768 |第4ボタンを標準ボタンにする(指定しても第4ボタンがないので無効になるようです)|
|vbApplicationModal |0 |アプリケーションモーダルに設定する|
|vbSystemModal |4096 |システムモーダルに設定する|

* 実際にMsgBoxのボタンに値を設定し実行してみる [#v01adfca]
以下にいくつかの実行例を記します。

** Yes/Noボタンを表示して注意メッセージアイコンを表示する [#z5e22c33]
タイトルの通り、Yes/Noボタンを表示して注意メッセージアイコンを表示する場合のコードです。~
ボタンの種類であるvbYesNoと注意アイコンであるvbExclamationの値を足しています。
-VBScript
 ' Yes/Noボタンを表示して注意メッセージアイコンを表示する
 MsgBox "Yes/Noボタンを表示して注意メッセージアイコンを表示する", vbYesNo + vbExclamation

#ref(02.gif)

** はい、いいえ、キャンセルボタンを表示し問合せアイコンを表示しキャンセルを標準ボタンにする [#haf32657]
タイトルの通り、はい、いいえ、キャンセルボタンを表示し問合せアイコンを表示しキャンセルを標準ボタンにする場合のコードです。~
ボタンの種類であるvbYesNoと注意アイコンであるvbExclamationの値を足しています。
-VBScript
 MsgBox "はい、いいえ、キャンセルボタンを表示し問合せアイコンを表示しキャンセルを標準ボタンにする", _
        vbYesNoCancel + vbQuestion + vbDefaultButton3

#ref(03.gif)

** タイトル名を指定する [#v1d81652]
3つ目の引数にタイトル文字列を指定するとダイアログボックスにタイトルが表示されます。
-VBScript
' タイトルの表示
MsgBox "タイトルの表示",,"タイトル"

ボタンがデフォルトでよい場合は上記VBScriptのように,,で省略できます。

#ref(04.gif)


MsgBox関数でボタンとアイコンを設定する場合には、上記の定数を足し算することにより実現することができます。~
以上、VBScriptのMsgBoxでボタンの種類指定とメッセージアイコンを指定する方法でした。

#htmlinsertpcsp(win-btm.html,win-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS