|
Just Do It!
|
|
Нужен простой таймер-будильник(консольный)16.05.2018, 11:50. Показов 7484. Ответов 52
Играю в БДО(не реклама), и вот понадобился простой таймер, который бы оповещал меня о прошествии заданного мной периода времени. То что я нашел в инетах, извиняюсь, просто хрень, все обнаруженные в ней недостатки меня не устраивают:
- навязчивые функции(кнопка на страницу разраба в полэкрана) - сложный(а знам заведомо глючный) интерфейс - неработающие функции(типа выбранный тип бипера просто не слышно) - главные для меня функции не удобно сделаны или глубоко спрятаны. - прочие глюки. А вот так должен выглядеть концепт таймера под меня: 1. окошко вызываемое комбоклавишей. 2. кнопка переключения двух режимов: "В минутах до сигнала" и "Точное время сигнала" 3. место ввода циферек. Все) звуковой файлик прибит гвоздями, но можно его в ручную поменять в папочке) И так на данной этапе нужен исключительно консольный вариант С++ класса делающий это чудо. Графоболочку я прикручу отдельно) С чего начать? Что посоветуете? Буду рад каким-нибудь шаблонам по этой теме))
0
|
|
| 16.05.2018, 11:50 | |
|
Ответы с готовыми решениями:
52
Простой консольный калькулятор Простой консольный калькулятор - не пойму, где ошибка |
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,921
|
|
| 17.05.2018, 10:13 | |
|
0
|
|
|
Just Do It!
|
||
| 17.05.2018, 11:11 [ТС] | ||
|
еще вчера была готова исправленная версия exe(см.вложение), но там я ни как не могу побороться очисткой клавиатурного буфера. гугл пока не помогает) Итак, на данный момент работает так: 1. Набираем время(в минутах). 2. Жмем ентер. 3. Таймер скрывается. 4. Для мониторинга жмем "SHIFT+1" 5. Для отключения мониторинга тоже "SHIFT+1" все. итак текущий дефект: после срабатывания таймера на новом предложении ввода времени таймера выводятся прожатые клавиши(аля кейлогер) во время последнего отсчета-работы таймера. Блин, не могу побороть, уже в асм скатился, а все советы гугла мимо.
0
|
||
|
Just Do It!
|
||
| 17.05.2018, 11:28 [ТС] | ||
|
конкретно в БДО я её использую. Добавлено через 12 минут ну, и да , конеш, комбинация "SHIFT+1" тоже не удачная, "!" часто используется в чате. надо поменять на "CRL+1" или "ALT+1" Добавлено через 2 минуты а с дефектом решил бороться не через очистку буфера, а через очистку экрана, но это как бы халтура))
0
|
||
|
14 / 20 / 14
Регистрация: 20.03.2018
Сообщений: 485
|
|
| 17.05.2018, 12:16 | |
|
Скинь код полностью может я доработаю выложу
Шото после тыканий после мониторинга не робит сигнал в заданное время
1
|
|
|
Just Do It!
|
|
| 17.05.2018, 13:25 [ТС] | |
|
mrden777,
о, я только буду рад) Не по теме: упоминай только мой ник и этот форум, когда буш продавать))))))))) :D исправлены мелкие недочеты. Далее, вот, думаю морочиться с двумя потоками, один управляющий, ну а в управляемом сам таймер. Это нужно, как я полагаю, чтобы избавиться от хлопот с перезапуском окна, т.е. что бы вся функциональность была в пределах досягаемость консольного окна. mrden777, правь, как считаешь нужным. А у мя в планах сделать перезапуск таймера без закрытия консоли. Полностью проект(МVS2010)+exe смотри вложение:
0
|
|
|
14 / 20 / 14
Регистрация: 20.03.2018
Сообщений: 485
|
|
| 17.05.2018, 16:30 | |
|
Это не "мусор" а развитие темы
Я обычно все версии выкладываю где пробую у меня их и по 6 и по 10 версий получается прежде чем получить окончательную версию. Народ должен видеть как ты тренируешься чтобы повторить ![]() И потом бывает что одну задачу можно решить несколькими способами - это тоже очень важно
0
|
|
|
Just Do It!
|
|||
| 17.05.2018, 16:45 [ТС] | |||
|
сделал отмену текущего периода с возможностью задания нового. Итак, на данный момент работает так: 1. Набираем время(в минутах) до начала срабатывания сигнала. 2. Жмем ентер. 3. Таймер скрывается. 4. Для мониторинга жмем "ALT(левый)+1" 5. Для отключения мониторинга тоже "ALT(левый)+1" 6. Прервать работу таймера и задать новый период - клавиша: "Escape" все... Полностью проэкт(MVS2010) + exe:
0
|
|||
|
Just Do It!
|
|
| 17.05.2018, 17:18 [ТС] | |
|
старый(уже) глюк побороть не могу пока:
щас проявляется так: если во время отсчета был прожат enter, то получаем некорректное отображение интерфейса или даже несанкционированный запуск в следующую итерацию. все вопросы к std::cin щас попробую что-нить сделать с запретом ввода во время просчета периода. судя по форуму, про это мало кто знает: вопросы по этой проблеме остались без решающих ответов. Если я не прав, то дайте ссылку, плиз. Выход из этой проблемы, пока, который я вижу, переход на винапишное окно.
0
|
|
|
14 / 20 / 14
Регистрация: 20.03.2018
Сообщений: 485
|
|
| 17.05.2018, 17:57 | |
|
Ты не в вижал студио писал да ? Я еле скомпоновал
0
|
|
|
Just Do It!
|
|
| 17.05.2018, 20:35 [ТС] | |
|
скрин с лучшим качеством:
Кликните здесь для просмотра всего текста
0
|
|
|
14 / 20 / 14
Регистрация: 20.03.2018
Сообщений: 485
|
|
| 17.05.2018, 20:43 | |
|
Ща доделаю скину хД
Все намного проще чем ты там намутил Я немного по другому сделал
0
|
|
|
14 / 20 / 14
Регистрация: 20.03.2018
Сообщений: 485
|
|
| 17.05.2018, 20:50 | |
|
как ты делал чтоб окно было определенного размера ? Чтобы не раздвигалось
0
|
|
|
Just Do It!
|
||||||||||||
| 17.05.2018, 21:06 [ТС] | ||||||||||||
0
|
||||||||||||
|
14 / 20 / 14
Регистрация: 20.03.2018
Сообщений: 485
|
||||||
| 17.05.2018, 21:41 | ||||||
Сообщение было отмечено XLAT как решение
Решение
TIMER_SPB2018_Ver 008 FINAL
![]()
Незнаю чтото он по Y все равно сжимается, ну начальное окно дает размер, да
1
|
||||||
|
14 / 20 / 14
Регистрация: 20.03.2018
Сообщений: 485
|
|
| 17.05.2018, 21:52 | |
|
Ну как бы я сделал расчет только на секунды в мониторинг, а задавать по стандарту в 3х параметрах
0
|
|
| 17.05.2018, 21:52 | |
|
Помогаю со студенческими работами здесь
40
Простой консольный конвертер валют - проверить корректность реализации
Простой консольный "сапер" Консольный будильник: как сверять время и проиграть мелодию таймер будильник Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет
значение производной при заданном х
Логарифм записывается как: (x-2)log(x^2+2) -. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|