0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 62
|
|
1 | |
Запуск и остановка Таймера25.02.2016, 16:00. Показов 17691. Ответов 10
Метки нет (Все метки)
Уважаемые форумчане, добрый день!
В просторах интернета по вопросу работы ТАЙМЕРА на VBA, я нашел много разных примеров, однако из-за слабой подготовки в программировании мне пока тяжело со всем этим разобраться. На одном из сайтов наше простой пример, где на форме идет время и есть кнопка. Я пробую на форме UserForm1 через Label1 и Label2 передавать значения номера вопроса и работы таймера. Сама форма запускается, идет подсчет нажатия кнопки, отражается № вопроса и время. Но если я кликаю по кнопке 5 раз (количество вопросов) но время еще осталось, то все равно через некоторый промежуток времени (время, которое осталось до завершения) всплывает окно "время вышло". Причем время еще придостаточно но все равно вылазит окно..... Как можно остановить таймер. И могут ли на форме присутствовать 2 таймера (для создания другого окна)
0
|
25.02.2016, 16:00 | |
Ответы с готовыми решениями:
10
Остановка макроса таймера, не закрывая файла Остановка таймера обратного отчета при выделении ячеек листа Vbs запуск и остановка цикла Запуск и остановка таймера по нажатию кнопки |
11508 / 3794 / 681
Регистрация: 13.02.2009
Сообщений: 11,197
|
||||||
26.02.2016, 09:34 | 2 | |||||
Можно не запускать таймер после какого-то нажатия кнопки
1
|
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 62
|
||||||||||||||||
26.02.2016, 11:59 [ТС] | 3 | |||||||||||||||
Первый способ для меня, как мало грамотного в этих вопросах более понятен. Хочется уточнить пару моментов:
1).
2).
3).
0
|
11508 / 3794 / 681
Регистрация: 13.02.2009
Сообщений: 11,197
|
|
26.02.2016, 17:36 | 4 |
Ну как-то так: при загрузке формы запускаем таймер и после истечения времени проверяем состояние переменной. Если она True, то запускаем снова таймер.
После нужного нажатия кнопки назначаем st = false. В результате при истечении времени OnTime процедура TimerStart завершается и не происходит очередной запуск таймера Application.OnTime
0
|
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 62
|
||||||
09.03.2016, 09:11 [ТС] | 5 | |||||
Доброго времени суток!
Alex77755, ваш код работает на УРА, но только для Excel (VBA). Я попробовал применить к VBA 6.0 выдает ошибку на :
Может для VBA 6.0 стоит применить Timer и привязать его к Label. Это я тоже пробовал, но не совсем понимаю как этот таймер должен работать с обратным осчетом.
0
|
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 62
|
|
09.03.2016, 10:22 [ТС] | 7 |
Вот этот компонент я и не могу применить.
Понимаю, что через свойство Enable таймер запускается и отключается, через Timer1.Interval задаю время работы таймера (например 3 минуты Timer1.Interval = 30000), а как совместить это все вместе не понимаю. Тем более, что хочу, чтобы в Label отражалось время с обратным отсчетом.
0
|
es geht mir gut
11270 / 4752 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
|
||||||
09.03.2016, 10:46 | 8 | |||||
Ну, во-первых, 3 минуты - это будет 180000.
А во-вторых, это не время работы таймера, а его интервал. Например,так
0
|
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 62
|
|
09.03.2016, 11:20 [ТС] | 9 |
SoftIce, спасибо за помощь. Сегодня вечером обязательно проверю и отпишусь.
0
|
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 62
|
|
11.03.2016, 22:30 [ТС] | 10 |
SoftIce, спасибо за примеры. С ними мне все понятно. А каким образом в этот пример можно добавить обратный отсчет например 5 минут в формате 05:00, 04:59 и т.д.
0
|
es geht mir gut
11270 / 4752 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
|
||||||
11.03.2016, 23:00 | 11 | |||||
Сообщение было отмечено The trick как решение
Решение
0
|
11.03.2016, 23:00 | |
11.03.2016, 23:00 | |
Помогаю со студенческими работами здесь
11
Запуск/остановка таймера по нажатию на TSpeedButton Запуск/остановка таймера при вводе в Edit команд Timer Start/Timer Stop Остановка таймера Остановка таймера Принудительная остановка таймера Остановка таймера и MessageBox Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |