Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Вывод разного текста в зависимости от таймера в C#

Михаил Минин Ученик (178), на голосовании 1 месяц назад
мне надо чтобы таймер типо считал секунды, но я вообще не могу понять как это сделать, помогите пожалуйста
я смог сделать только такое
var timer = new System.Timers.Timer(1000);
timer.Elapsed += OnTimerElapsed;
timer.Start();

Console.WriteLine("Press any key to stop the timer...");
Console.ReadKey();
timer.Stop();
}

private static void OnTimerElapsed(object sender, ElapsedEventArgs e)
{
Console.WriteLine("Hello, world!");
}
Голосование за лучший ответ
Jurijus Zaksas Искусственный Интеллект (445747) 2 месяца назад
>но я вообще не могу понять как это сделать
>я смог сделать только такое
Да, картина безрадостная.

>помогите пожалуйста
Ну абы помогло:
 static void Main(string[] args) 
{
Console.WriteLine("Press any key to stop the timer...");
bool ThreadStopped = false;
Thread TimerThread = new Thread(delegate ()
{
DateTime StartingTime = DateTime.Now;
while (!ThreadStopped)
{
Console.Write($"{(DateTime.Now - StartingTime).TotalSeconds}\r");
Thread.Sleep(1000);
}
});
TimerThread.Start();
Console.ReadKey();
ThreadStopped = true;
TimerThread.Join();
}
Михаил МининУченик (178) 2 месяца назад
а как сделать чтоб при достижении 100 сек выводился текст определенный?
Jurijus Zaksas Искусственный Интеллект (445747) Михаил Минин,
 Console.WriteLine("Press any key to stop the timer..."); 
bool ThreadStopped = false; 
Thread TimerThread = new Thread(delegate () 
{ 
    Console.OutputEncoding = Encoding.UTF8; 
    DateTime StartingTime = DateTime.Now; 
    bool MessageShown = false; 
    while (!ThreadStopped) 
    { 
        int SecondsSinceStart = (int)(DateTime.Now - StartingTime).TotalSeconds; 
        Console.Write($"{SecondsSinceStart}\r");         
        if (SecondsSinceStart >=100 && !MessageShown) 
        { 
            Console.WriteLine("\r\nтекст определенный"); 
            MessageShown = true; 
        } 
        Thread.Sleep(500); 
    } 
}); 
TimerThread.Start(); 
Console.ReadKey(); 
ThreadStopped = true; 
TimerThread.Join(); 
Похожие вопросы