Gå til innhold

VIsual Basic - Returnere til sjekking av commando?


Anbefalte innlegg

Prøver å lage en veldig basic command prompt, og derfor er det nødvendig at programmet returnerer til sjekking av kommando fra brukeren etter en kommando er blitt utført, hvordan gjøres dette i Visual Basic?

 

While (True)
           Dim Cmd As String = Console.ReadLine()
           If (Cmd = "exit") Then
               End
           Else
               If Cmd = "print" Then
                   Console.WriteLine("Print> ")
                   Dim PrintValue As String = Console.ReadLine()
                   Console.WriteLine(PrintValue)
                   Cmd = Console.ReadLine()
               End If

               Cmd = Console.ReadLine()
           End If

       End While

Lenke til kommentar
  • 5 måneder senere...
Videoannonse
Annonse

Hvorfor leser du Cmd tre ganger for hver gang du utfører noe?

 

Hver Console.ReadLine() vil blokkere programmet ditt til det er lest en linje fra input. Siden du kaller Console.ReadLine() to ganger etter du har utført en kommando må du da skrive inn to linjeskift i kommandovinduet for å komme forbi dem. Den tredje linjen du skriver inn etter en kommando vil bli lest inn på toppen og utført i en ny iterasjon i loopen.

 

Kjør programmet ditt i debuggeren, så ser du hva som skjer. Ta bort alle ReadLine() utenom den på toppen så vil virke slik du forventer.

 

Edit: Ouch, så datoen på OP, var ikke meningen å holde den i live...

Endret av MailMan13
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...