VBScript
VBScriptで自己言及のパラドックス2015/06/12
Msgboxを応用して自己言及のパラドックスを体験できるものを作ってみた。
【実行イメージ】
はいをクリックすると下記のように
さらにOKを押すともう一度聞いてきます。
いいえやキャンセルを押した場合の動作は確認してみてください。
Dim rtn, msg:msg="いいえをクリックしますか?" rtn = Msgbox(msg, vbYesNo or vbQuestion or vbSystemModal, "質問です。") msg = "もう一度聞きます。" & vbCr & msg Do Until rtn = vbCancel If rtn = vbYes Then Msgbox "いいえをクリックしますか?と聞きました。" & vbCr & _ "あなたは「はい」と答えたのにいいえをクリックしませんでした。", _ vbOKOnly or vbCritical or vbSystemModal, "Error" If rtn = vbNo Then Msgbox "いいえをクリックしますか?と聞きました。" & vbCr & _ "あなたは「いいえ」と答えたのにいいえをクリックしました。", _ vbOKOnly or vbCritical or vbSystemModal, "Error" rtn = Msgbox(msg, vbYesNoCancel or vbQuestion or vbSystemModal, "質問です。") Loop Msgbox "ループから脱出しました。", vbInformation or vbSystemModal