WshShell.Popupポップアップ メソッド

本ページには広告が含まれています。

ポップアップメッセージを表示します。

押されたボタンの値が戻り値として返るので、SELECT文で処理を分岐することができます。

構文
  1. intButton = WshShell.Popup( strText, nSecondsToWait, strTitle, nType )
引数
strText 省略可
ポップアップウィンドウに表示するテキスト
nSecondsToWait 省略可
ポップアップ ウィンドウを閉じるまで待機する秒数
strTitle 省略可
ポップアップウィンドウのタイトルに表示するテキスト
nType 省略可
ポップアップ メッセージ ボックスに表示するボタンとアイコンの種類を示す数値
戻り値
メッセージボックス終了時にクリックするボタンの番号を示す整数値。
1:[OK]ボタン
2:[キャンセル]ボタン
3:[中止]ボタン
4:[再試行]ボタン
5:[無視]ボタン
6:[はい]ボタン
7:[いいえ]ボタン
-1:制限時間経過

nTypeに指定できる値一覧

指定するボタン・アイコン・デフォルトボタンの合計値を指定する。

例えば、OK・キャンセルのボタン(1)、注意(48)のアイコン、左から1番目(0)をデフォルトの場合は、1 + 48 + 0なので49を指定します。 値だと何が指定されているのかわからなくなるのでvbOKCancel + vbExclamation + vbDefaultButton1というような項目毎に書く書き方もできます。これらの定数はUWSCで定義されていないのでCONSTで定義してから使用します。

ボタンの種類

名前 説明
vbOKOnly 0 OK
vbOKCancel 1 OK、キャンセル
vbAbortRetryIgnore 2 中止、再試行、無視
vbYesNoCancel 3 はい、いいえ、キャンセル
vbYesNo 4 はい、いいえ
vbRetryCancel 5 再試行、キャンセル

アイコンの種類

アイコンを表示しない場合は0を指定または省略。

名前 説明
vbCritical 16 警告警告
vbQuestion 32 問い合わせ問い合わせ
vbExclamation 48 注意注意
vbInfomation 64 情報情報

デフォルトボタン

どのボタンをデフォルトボタンにするかを指定します。デフォルトボタンとはダイアログ表示時にフォーカスがある状態のボタンのことです。

名前 説明
vbDefaultButton1 0 左から1番目のボタン
vbDefaultButton2 256 左から2番目のボタン
vbDefaultButton3 512 左から3番目のボタン
vbDefaultButton4 768 左から4番目のボタン

デフォルトボタンの位置は間違って押されても大丈夫なようなボタンに設定するようにします。例えば「保存しますか?」で[はい]と[いいえ]のボタンがあるときは、[はい]をデフォルトボタンにすることで意図せずにEnterを押したときにも保存せずに閉じることを防ぐことができます。

このときに[いいえ]をデフォルトボタンにしていると、間違ってEnterを押したときに保存しないまま閉じるという事態が発生してしまいます。

プログラム実行例

ポップアップウィンドウを表示

UWSC
CONST vbAbortRetryIgnore = 2
CONST vbExclamation = 48
CONST vbDefaultButton2 = 256

DIM WshShell = CREATEOLEOBJ("WScript.Shell")

SELECT WshShell.Popup("エラーが発生しました。", 3, , vbAbortRetryIgnore + vbExclamation + vbDefaultButton2)
	// 中止
	CASE 3
		MSGBOX("中止")
	// 再試行
	CASE 4
		MSGBOX("再試行")
	// 無視
	CASE 5
		MSGBOX("無視")
SELEND
結果
WshShell Popup.png
使用関数