性格悪い人が優勝

WSHのスクリプトでDo While Loopをまわしているときに任意のキーを押すとループから抜け出すようなプログラムは可能ですか。

A 回答 (1件)

'多分無いのでは・・・


'ヘボな案ですが、一回のループに時間が掛かるなら、PopUpが使えるかも?
'下のサンプルのように自動的に消えてしまいますので、
'PopUpウィンドウが出たときに分岐できるかも?
'※但しこのPopUp はかなり当てになりません
'時間が正確でない。
'タスクバーには現れるがポップアップして最前面に出てこない。

'ということで、そちらの状況が分かりませんけれども
'Loop を抜け出す以外の方法を考えた方が良さそうな気がします。

Set objShell = CreateObject("Wscript.Shell")
Do Until i > 3
  '実際の何かの処理
  wscript.sleep 3000
  
  Res = objShell.Popup("終了しますか", 3, "三秒以内に答えてね",1)
  i=i+1
  Select Case Res
   case 1  
       dmy = objShell.Popup("終了します", 1, "一秒待ってね")
       Exit Do
   case 2
   dmy = objShell.Popup("またね", 1, "一秒待ってね")
   case -1
   dmy = objShell.Popup("次回はお返事を", 1, "一秒待ってね")
  End Select
Loop
if not i > 3 then
  msgbox "一抜け"
else
  msgbox "三回を超えました"
end if
    • good
    • 0
この回答へのお礼

ありがとうございます。参考にさせていただきます。

お礼日時:2007/08/29 23:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!