2012-04-08 5 views
0

コンソールアプリケーションの最後に、プログラムを終了するためにEnterキーを押すか、別の検索を実行するためにsと入力するかのいずれかをユーザーに要求する手順があります。私が持っている問題は、ユーザーがプログラムの最後に何を入力しても関係ありません。私がしたいのは、ユーザーがsと入力してプログラムをやり直し、ユーザーが別の検索を実行できるようにする場合です。このプログラムは手続き的なものであり、プログラムの先頭に戻って検索を開始する方法を見つける必要があります。どうすればこれを達成できますか?ここでどのようにしてプログラムを終了するか、Visual Basicのコンソールアプリケーションでユーザー入力に基づいてプログラムを開始できますか?

は、私はとのトラブルを抱えている手順です:

Private Sub terminateProgram() 
    Console.Write("Press the enter key to end the program or press s to search again") 
    If (CStr(Console.ReadLine()) = "s") Then 
     Console.WriteLine("It worked") 
    Else 
     Console.Read() 
    End If 

注:あなたが見ることができるように、私はちょうど、少なくとも "を試してみて、キャプチャするウィンドウに「それは働いていた」書いていますs "が入力されます。

答えて

1

構造ループであなたのプログラムやブール値を返すようにする方法、限り、あなたの方法は、「偽」を返すように、プログラムが実行し続けるように:

Sub Main() 
    Do 

    Loop While Not terminateProgram() 
End Sub 

Public Function terminateProgram() As Boolean 
    Console.Write("Press the s key to search again or any other key to end the program") 
    Return Console.ReadKey(True).KeyChar.ToLower() <> "s" 
End Function 
関連する問題