Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
14 / 14 / 5
Регистрация: 23.05.2011
Сообщений: 78
1

Проблема с таймером =(

09.06.2011, 09:15. Показов 893. Ответов 3
Метки нет (Все метки)

Я запускаю таймер в "Form1_load" пытаюсь остановить событии timer1_Tick, но условие не работает, может это я криворук, что-то не так написал...? По логике должно работать...

C#
1
2
3
4
5
6
7
8
9
10
11
12
private void timer1_Tick(object sender, EventArgs e)
        {
 
            p_redCar.X = p_redCar.X + b.Next(4)+2;
            redcarBox.Location = p_redCar;
            p_blueCar.X = p_blueCar.X + b.Next(4) + 2;
            bluecarBox.Location = p_blueCar;
 
            
            if (redcarBox.Location.X >= 795) { timer1.Stop(); }                   
                        
        }
Добавлено через 4 минуты
Если поставить условие "Не равно", таймер стоит как "вкопаный",а при таком условии никак не хочет останавливаться=(
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.06.2011, 09:15
Ответы с готовыми решениями:

Проблема с таймером
Здравствуйте. У меня проблемка. Есть такой код: using System; using System.IO; using...

Проблема с таймером
Здравствуйте. Вылез подводный камень при работе с таймером. var timer = setTimeout(function...

проблема с таймером 1
написал прогу в которой работает таймер1 в реале не рабоает, почему не понятно #include...

проблема с таймером
Добрый вечер. Начал недавно заниматься программированием микроконтроллеров (использую...

3
271 / 264 / 20
Регистрация: 27.02.2009
Сообщений: 694
Записей в блоге: 7
09.06.2011, 09:46 2
В среднем он должен останавливаться через 200 срабатываний (если начальное положение 0). Проверяйте выполнение условия. Оно у вас не выполняется.
0
мастер топоров
905 / 730 / 101
Регистрация: 16.08.2009
Сообщений: 1,476
09.06.2011, 23:32 3
может следует попробовать
C#
1
timer1.Enabled = false;
и следует заметить что первый тик таймера происходит при его запуске
если нужно один раз тикнуть или запустить через некоторое время какой-то метод, то можно воспользоваться таймером из класса Threading
0
271 / 264 / 20
Регистрация: 27.02.2009
Сообщений: 694
Записей в блоге: 7
10.06.2011, 12:37 4
Цитата Сообщение от Koran Посмотреть сообщение
может следует попробовать
C#
1
timer1.Enabled = false;
На практике практически ни какой разницы нет между Timer.Enable=false и Timer.Stop. Для остановки таймера из обработчика подходят оба варианта. Тем более автор писал что писал что при изменении условия на <= остановка происходит. Следовательно не срабатывает условие или автор не дожидался его срабатывания. Без кода всего проекта сложно говорить почему это происходит. Как варианты:
1. Большой интервал между тиками;
2. Изменение в другом месте положения элемента redcarBox.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.06.2011, 12:37

Проблема с таймером
Почему на Delphi XE4 в &quot;Таймере&quot; не работает следующий код: procedure TForm1.Timer1Timer(Sender:...

Проблема с АПИ-таймером
Чё-то у меня первый раз такая бяка случается. Привык доверять АПИ-решениям гораздо больше, чем...

Проблема с таймером TIM2
Добрый день! Нужна ваша помощь. Проблема в том, что в режиме отладки, сразу после включения...

Проблема с таймером на ассемблере
Всем доброго времени суток. Я только начал изучать ассемблер. До этого работал только на C. Вроде...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.