Console.ReadKey(true) Schleife - IF

  • C#
  • .NET (FX) 4.5–4.8

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von pferdefleisch.

    Console.ReadKey(true) Schleife - IF

    Hallo VB-Paradise Community,

    ich habe diese Schleife:

    C#-Quellcode

    1. while (Alive)
    2. {
    3. ConsoleKeyInfo Key = Console.ReadKey(true);
    4. if (Key.Key == ConsoleKey.Escape)
    5. Alive = false;
    6. else if (Key.Key == ConsoleKey.W)
    7. Move("up");
    8. else if (Key.Key == ConsoleKey.A)
    9. Move("left");
    10. else if (Key.Key == ConsoleKey.S)
    11. Move("down");
    12. else if (Key.Key == ConsoleKey.D)
    13. Move("right");
    14. }


    Das Beenden der Schleife mit Escape funktioniert wunderbar, nur die anderen Tasten gehen nicht, ist doch immer das gleiche?
    Kann auch sein das es ein Anfänger Fehler ist, programmiere das erste mal eine Konsolen Anwendung ^^.

    EDIT:
    Ich bin dumm, es geht hatte einen Fehler in Move xD
    There are only 10 types of people in the world: Those who understand binary and those who don't.
    Ich Empfehle dir erstmal eine Enumerations zu verwenden:

    C#-Quellcode

    1. public enum Richtungen{
    2. Up,
    3. Down,
    4. Left,
    5. Right
    6. }
    7. Move(Richtungen.Up);

    Dann noch Switch-Case Statements:

    C#-Quellcode

    1. switch(Key.Key){
    2. case ConsoleKey.Escape:
    3. Alive = false;
    4. break;
    5. case ConsoleKey.W:
    6. Move(Richtungen.Up);
    7. ... usw
    8. }