2013-06-06 3 views
-1

У меня есть консольное приложение, которое просит пользователя ответить на вопрос, оценка отображается в правом верхнем углу экрана, я хочу, чтобы оценка была автоматически обновлена, когда пользователь дает правильное ответ.Автоматическое обновление в консольном приложении

public void L1Timer() 
    { 
     Console.Clear(); 
     int ch = 0, score = 0; 
     Console.Write("Chances : " + ch); 
     Console.CursorLeft = 40; 
     Console.Write("Marks : " + score); 
     for (int time = 0; time <= 100000; time++) 
     { 
      Console.SetCursorPosition(65, 0); 
      Console.Write("Time Elapsed : " + time + " Secs"); 
      Console.CursorLeft = 40; 
      Thread.Sleep(1000); 
     } 
    } 

    public void Level1() 
    { 
     Console.WriteLine("\n\n"); 
     Console.CursorLeft = 40; 
     Console.WriteLine("C _ _ E _ _ _ T _ _ N"); 
     Console.WriteLine("\n\n"); 
     int tot = 0; 
     while (tot != 70) 
     { 
      Console.Write("Guess : "); 
      string gues = Console.ReadLine(); 
      if ((gues == "E") || (gues == "L") || (gues == "B") || (gues == "R")) 
      { 
       tot += 10; 
      } 
     } 
    } 

    static void Main(string[] args) 
    { 
     VocEnhancer VE = new VocEnhancer(); 
     Thread T1 = new Thread(new ThreadStart (VE.L1Timer)); 
     Console.WriteLine("\n\n\n\n\n"); 
     Thread T2 = new Thread(new ThreadStart(VE.Level1)); 

     T1.Start(); 
     T2.Start(); 
    } 

Это мой код ... Я не знаю, что добавить для автоматического обновления баллов.

+1

Приложение Windows Forms вместо консоли. На самом деле просто. Это как просить лететь на небо с личным автомобилем. Это не предназначено для такого использования. –

+0

Показать свой код .. –

+2

'int score; если (ответ правильный) { оценка ++; } ' – Praveen

ответ

0

Без вашего кода, мы можем только предположить, что и мое предложение следующим образом:

string question = "CEO of Microsoft"; 
string actualAnswer ="STEVE BALLMER"; 
Console.WriteLine(question); 
string userAnswer = ""; 
Console.WriteLine(userAnswer); 
int score = 0; 
if(actualAnswer.Trim() == userAnswer.ToUpper().Trim()) 
{ 
score++; 
} 
+0

Я только что добавил свой код..Pls помочь мне отредактировать его –

+0

@Precioustj для каждой догадки, вы можете добавить счет 'tot'? – Praveen

0

Первое предупреждение: консоль не предназначен для отображения графики, меню, или быть обращено на. Он предназначен для написания на одной строке в то время. Для всех вещей графика есть окна, а окна должны использоваться, а не консоли. Однако, если вы просто играете и развлекаетесь в свободное время, продолжайте писать персонажи в странных местах консоли.

Для перемещения курсора используйте метод SetCursorPosition. Чтобы узнать, где в данный момент используется курсор, используются CursorLeft и CursorTop. Если вы хотите что-то написать с фиксированными координатами, сохраните текущую позицию курсора, перейдите в фиксированную позицию, напишите текст и вернитесь в прежнее положение.

Но что должно произойти, когда весь текст дойдет до конца экрана, а текст в верхней части экрана исчезнет? Ну, есть способы решить это, но не беспокойтесь. Просто используйте окно вместо консоли.

+0

Это то, что нам сказали сделать в нашем проекте –

+0

@ Precioustj вам сказали написать что-то в верхней части экрана консоли? Трудно поверить. Если вам говорят, что вы создаете консольный проект, просто делайте это просто, по очереди, и нет этого причудливого материала. – Dialecticus

Смежные вопросы