21 / 21 / 4
Регистрация: 10.11.2015
Сообщений: 123
|
||||||
1 | ||||||
Таймер на форме. Запуск по нажатию кнопки28.01.2016, 17:23. Показов 3576. Ответов 8
Метки нет Все метки)
(
Добрый вечер форумчане, подскажите или поделитесь ссылкой на готовый вариант.
Хочу сделать на форме поле-таймер. Запускаемый по кнопке. Идея-форма для прохождения теста. Человек заходит на форму, читает правила, нажимает кнопку-запускается тест. И только тогда появляется таймер. Реализовал следующим образом.
1 Поле в котором задается время отсчета, моно было бы просто ввести 30 и он понял, что это 30 мин. А не вводить в формате 0:30:00 2 Пока кнопка не была нажата, в поле таймер. Не выводилось бы вообще ничего. А то он начинает считать по загрузке формы от системного времени (можно конечно, скрыть это поля до нажатия кнопки, но может есть более красивый вариант решения) Спасибо за любую помощь
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
|
|
28.01.2016, 17:23 | |
Ответы с готовыми решениями:
8
Запуск таймера на второй форме по нажатию кнопки на первой Нарисовать домик по нажатию кнопки, и звезду по нажатию на форме Таймер по нажатию кнопки |
![]() 26772 / 14451 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
|
28.01.2016, 17:31 | 2 |
Только сегодня сделал примерчик для кухонных нужд
![]() По умолчанию там 20 минут, но введите 0.1 и понаблюдайте как через 6 секунд форма возбудится. Десятичный разделитель ставить конечно Ваш. У меня точка. У Вас может быть запятая.
2
|
895 / 285 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
|
|
28.01.2016, 17:32 | 3 |
Ого))) Такое реально интересно было бы понаблюдать))) Вы сегодня прямо в ударе, то стихи про армию, то возбуждающиеся формы)) Браво))
1
|
21 / 21 / 4
Регистрация: 10.11.2015
Сообщений: 123
|
|
29.01.2016, 08:48 [ТС] | 4 |
Блин, запустил Ваш пример посмотреть на работе с утра. Поставил 1 минуту. Вообщем коллеги и начальство не оценило пищащий на весь офис и мигающий красным мой ноут
![]() Добавлено через 1 минуту Надо было бы еще блокировку формы по истечению таймера поставить, что бы быстро не отключить ![]()
0
|
95 / 91 / 16
Регистрация: 13.04.2015
Сообщений: 545
|
|
29.01.2016, 11:31 | 5 |
Samual_J_Colt, могу предложить такой вариант по кнопке
0
|
21 / 21 / 4
Регистрация: 10.11.2015
Сообщений: 123
|
|||||||||||||||||||||
29.01.2016, 13:52 [ТС] | 6 | ||||||||||||||||||||
Попытался реализовать несколько вариантов отображения таймера.
Особенно было интересно реализовать с помощью текста на форме. Посмотрите и поделитесь мнением, по поводу такой реализации. В частности еще интересно, почему в аксесе
![]() А функция datediff мне не нравится так, как возвращает результат в интервалах.
0
|
![]() 26772 / 14451 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
||||||
29.01.2016, 14:07 | 7 | |||||
Надо пользоваться форматом
0
|
21 / 21 / 4
Регистрация: 10.11.2015
Сообщений: 123
|
||||||
29.01.2016, 14:30 [ТС] | 8 | |||||
Спасибо идея интересная.
Так же мне хотелось бы отображение таймера в виде 00:00 (минуты секунды, можно добавочно часы) В вашем коде это можно сделать изменив
Как вариант можно ввести вторую переменную для минут. Уменьшать ее на 1, на 60 шаге секундного счетчика. А сообщение выводить при достижении обоих переменных 0. Спасибо за идею, буду выбирать из всех вариантов наиболее удобный. Добавлено через 14 минут Спасибо. Думал об этом. Но могли бы объяснить почему, аксесс может преобразовать в текст значения Now() а разницу нет? Ведь он показывает некое значение разницы,(как я понимаю в формате числа двойной точности с плавающей запятой), почему же он не может его преобразовать? Связанно ли это с ограничением даты (Дата может принимать значения от -657 434 (1 января 100 г. н.э.) до 2 958 465 (31 декабря 9999 г. н.э.).), тогда какое же значение он пытается вывести? Добавлено через 1 минуту Mobile, надеюсь не сильно Вас загрузил. Просто с детства был любопытен и пытался все понять, а не принять на веру ))
0
|
![]() 26772 / 14451 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
|
29.01.2016, 15:07 | 9 |
Дело в типизации. Строка или вариант не могут знать, что заданная им разность двух даблов это время. Они выпечатывают то, что им дано. А даны им числа с плавающей запятой, а не даты. Типизируйте переменные и будете получать ответ в сразу в соответствующем формате без дополнительных преобразований.
Но здесь надо сразу отметить, что типизированные переменные не воспринимают NULL, нулл принимает только тип Variant. Поэтому если входные данные могут содержать нуллы, то приходится работать только с вариантами.
0
|
29.01.2016, 15:07 | |
Помогаю со студенческими работами здесь
9
Как остановить таймер по нажатию кнопки?
Запуск другой программы по нажатию кнопки Запуск таймера по нажатию кнопки в GUI Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |