2013-07-15 136 views
1

我在c#中製作控制檯應用程序。而且我遇到了一個問題,它會覆蓋我輸入的內容。我有兩個線程運行它。在控制檯應用程序中單獨輸入和輸出?

class Program 
{ 
    static void Main(string[] args) 
    { 
     //Grab Input 
     new Thread(new ThreadStart(getInput)).Start(); 
    } 

    public static void getInput() 
    { 
     while (true) 
     { 
      string command = System.Console.ReadLine(); 
      handleCommand(command); 
     } 
    } 

    public static void handleCommand(string command) 
    { 
     //Do whatever with the command 
    } 
} 

然而,現在,如果我做

System.Console.WriteLine("Anything"); 

如果我已經寫輸入,就會把就在我的輸入中間的「任何東西」。我只是想知道如何單獨的輸入和輸出在控制檯應用程序:3

任何幫助將是可怕的。在此先感謝..

示例問題: Example Issue

回答

0

我只是想知道如何在一個控制檯應用程序分開輸入和輸出:3

是不是真的有辦法在控制檯應用程序中執行此操作。

如果你想完全控制,包括輸入和輸出的「分離」,GUI是一個適當的方法。這將允許您將輸入控件與顯示給用戶的任何輸出完全分開。

+0

要在此基礎上構建,OP可能希望檢出Curses Sharp以構建控制檯GUI。 http://sourceforge.net/projects/curses-sharp/ –

+0

@JustinNiessner雖然curses不是線程安全的,但是...如果你想從多個線程使用它,你仍然需要使用Curses Sharp做一些欺騙... –

+0

它至少會給OP提供一種將文本與輸入分開放置的方法......如果正確完成。 –

相關問題