строительство остановки смотрит с помощью таймера

Я хочу добавить функциональность к своему WinForms так, чтобы, когда это начинает прилавок запуски, которые будут в hh:mm. Я знаю, что это может быть сделано, используя таймер. Я сделал этикетку времени, которая показывает текущее время, но я не знаю, как начать таймер, когда форма загружается. Есть ли какой-либо метод или класс для этого?

1
nl ja de
Не используйте кодовое форматирование, чтобы подчеркнуть определенные слова. Кроме того, отправьте что you' ve сделан до сих пор. Кроме того, поиск Google с условиями груз формы C# дал бы вам ответ.
добавлено автор dandan78, источник
Не используйте кодовое форматирование, чтобы подчеркнуть определенные слова. Кроме того, отправьте что you' ve сделан до сих пор. Кроме того, поиск Google с условиями груз формы C# дал бы вам ответ.
добавлено автор dandan78, источник
@lazyberezovsky я хочу количество вниз тогда таймер, может помочь ему, но как?
добавлено автор shariq_khan, источник
@lazyberezovsky я хочу количество вниз тогда таймер, может помочь ему, но как?
добавлено автор shariq_khan, источник
Так, what' s неправильно с компонентом таймера winforms?
добавлено автор Sergey Berezovskiy, источник
Так, what' s неправильно с компонентом таймера winforms?
добавлено автор Sergey Berezovskiy, источник
Секундомер приходит на ум: dotnetperls.com/stopwatch
добавлено автор paul, источник

3 ответы

Место Таймер компонент к вашей форме (тянут его от ToolBox - это - imporant, потому что таймер должен быть зарегистрирован как компонент формы, который будет расположен правильно, когда форма закрывается). Установите таймер Интервал собственность к 60000 (это равно одной минуте). И подпишитесь, чтобы Тиканье событие:

void timer1_Tick(object sender, EventArgs e)
{
    if (endTime < DateTime.Now)
    {
       MessageBox.Show("Time is out!");
       timer1.Stop();
       return;
    }

    timeLabel.Text = (endTime - DateTime.Now).ToString(@"hh\:mm");
}

На Form_Load таймер запуска обработчика событий и экономит время окончания обратного отсчета:

private DateTime endTime;//field to store end time

void Form1_Load(object sender, EventArgs e)
{
    endTime = DateTime.Now.AddMinutes(120);//set countdown to 120 minutes
    timer1.Start();
}
2
добавлено
ХОРОШО я получил вас сэр. но когда хранение его не дает в надлежащем TimeSpan ts заказа = TimeSpan. Разбор (counter_label. Текст); total_label. Текст = Св. Адд (ts).ToString ("hh\:mm\:ss"); но когда я делаю этот total_label. Текст = Свойства. Параметры настройки. Default.datetime; это не входит в правильный порядок, когда есть полное 0:00:07 тогда, это показывает 12:00:07 почему сэр?
добавлено автор shariq_khan, источник
можно ли помочь мне здесь сэр stackoverflow.com/questions/14583036/…
добавлено автор shariq_khan, источник
хорошо. сэр я буду в следующий раз, будет более конкретным. и надежда вы поможете мне в следующий раз:) имеют хороший день сэр
добавлено автор shariq_khan, источник
сэр спасибо это уменьшено, если я хочу к increament от hh:mm как 0:01 минут и затем 0:02 минут тогда, что я должен сделать?
добавлено автор shariq_khan, источник
спасибо сэр. благодарит поддержать новичков
добавлено автор shariq_khan, источник
@shariq_khan I' ve добавил решение для вашего второго ответа
добавлено автор Sergey Berezovskiy, источник
@shariq_khan я думаю it' s уже ответил - когда вы добавляете, или substract DateTime возражает, что вы получаете TimeSpan (т.е. продолжительность времени) объект
добавлено автор Sergey Berezovskiy, источник
@shariq_khan вам рады, но пожалуйста в следующий раз предоставляют некоторый код вы уже, имеют - это будет полезно и для вас и для нас:)
добавлено автор Sergey Berezovskiy, источник
@shariq_khan тогда необходимо спасти время начала startTime = DateTime. Теперь; и в кредит укладчик действительно timeLabel. Текст = (DateTime. Теперь - startTime).ToString ("hh\:mm"); BTW обратный отсчет означает декремент
добавлено автор Sergey Berezovskiy, источник

Создание таймера очень простое и прямое:

Timer t1 = new Timer(); 
t1.Interval = 100; 
t1.Tick+=new EventHandler(t1_Tick);
t1.Start();

void t1_Tick(object sender, EventArgs e)
{

}

For more information see http://msdn.microsoft.com/en-us/library/system.timers.timer(v=vs.80).aspx

1
добавлено
сэр, как разместить его на label.text? я не хочу простое создание таймера, я хочу количество вниз таймер, который увеличивает как 0:01, 0:02, 0:03 и т.д., я хочу количество вниз, которое начинает с hh:mm тогда, что написать в событии тиканья таймера?
добавлено автор shariq_khan, источник
Прочитайте документацию и пьесу вокруг с исходным кодом. Тогда you' ll находят решение.
добавлено автор Kai, источник

Создание таймера очень простое и прямое:

Timer t1 = new Timer(); 
t1.Interval = 100; 
t1.Tick+=new EventHandler(t1_Tick);
t1.Start();

void t1_Tick(object sender, EventArgs e)
{

}

For more information see http://msdn.microsoft.com/en-us/library/system.timers.timer(v=vs.80).aspx

1
добавлено
сэр, как разместить его на label.text? я не хочу простое создание таймера, я хочу количество вниз таймер, который увеличивает как 0:01, 0:02, 0:03 и т.д., я хочу количество вниз, которое начинает с hh:mm тогда, что написать в событии тиканья таймера?
добавлено автор shariq_khan, источник
Прочитайте документацию и пьесу вокруг с исходным кодом. Тогда you' ll находят решение.
добавлено автор Kai, источник
Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot