|
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 8
|
||||||
При достижении определенного промежутка времени, отключался таймер и кнопка на форме становилась видимой07.01.2016, 18:25. Показов 1895. Ответов 14
Метки нет (Все метки)
Здравствуйте!
Работаю в C++Builder XE5. Необходимо, чтобы при достижении определенного промежутка времени, отключался таймер и кнопка на форме становилась видимой, пример кода:
Если строка Button1->Visible=true; исключена, то таймер отключается нормально, программа закрывается корректно. Пример программы прикреплен. Заранее благодарю.
0
|
||||||
| 07.01.2016, 18:25 | |
|
Ответы с готовыми решениями:
14
Сигнал при достижении определенного времени
|
|
Практикантроп
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
|
||
| 08.01.2016, 12:05 | ||
|
Добавлено через 9 минут Хотя, нет. Если раскомментировать Button1.. ,то виснет. Я думаю, это связано с запуском перерисовки формы при изменении видимости кнопки.
0
|
||
|
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 8
|
||
| 08.01.2016, 20:07 [ТС] | ||
|
Даже более того, я побывал еще с CreateTimerQueueTimer, результат один в один: зависание. Еще одна особенность, если кнопка была видна до начала работы таймера(прописать в свойстве кнопки, а так же добавить в событие SpeedButton чтобы кнопка исчезала в момент запуска таймера), то программа работает корректно. Просто мои знания в программировании не столь велики, чтобы решить данную проблему.
0
|
||
|
управление сложностью
|
||
| 11.01.2016, 10:01 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 8
|
||
| 11.01.2016, 10:51 [ТС] | ||
|
В свойствах кнопки свойство Visible=false, таймер достигая определенного значения пытается её включить(см. код в первом посте).
0
|
||
|
Практикантроп
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
|
|
| 11.01.2016, 10:57 | |
|
Почтальон, это мультимедийный таймер, а это не то же самое, что обычный таймер. Попробуйте "собрать" проект во вложении и поработать с ним в вариантах, как описано.
1
|
|
|
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 8
|
|
| 11.01.2016, 10:57 [ТС] | |
|
Я на 99% процентов уверен, что дело в "потоках", т.к. мультимедиа таймер запускается в отдельном потоке.
Могу предположить, что действия одного потока не могут приводить к отрисовке объектов в другом.
0
|
|
|
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 8
|
|||
| 11.01.2016, 11:07 [ТС] | |||
|
Добавлено через 29 секунд
0
|
|||
|
Практикантроп
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
|
||||||
| 11.01.2016, 12:31 | ||||||
|
Моё мнение - отрисовка кнопки занимает время, соизмеримое с работой этой функции; возникают какие-то системные накладки. Если я выношу за пределы функции установление видимости кнопки (видимость меняется по событию изменения текста в эдите), то никакого зависания не наблюдается. Но может это только новогодние фантазии.
Насчет отдельного потока... - возможно вы правы. Установка "видимости" компонента - это процедура подольше простого изменения эдит->текст.
0
|
||||||
|
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 8
|
||
| 11.01.2016, 12:45 [ТС] | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 8
|
|
| 12.01.2016, 18:40 [ТС] | |
|
Тема остаётся открытой
0
|
|
|
Супер-модератор
|
||||||||||||
| 12.01.2016, 20:02 | ||||||||||||
Сообщение было отмечено km-zz как решение
Решение
Доки на timeSetEvent гласят:
Пример нужен, или сам разберешься? Хотя... Вот пример: header-файл
1
|
||||||||||||
|
0 / 0 / 0
Регистрация: 07.01.2016
Сообщений: 8
|
||||||
| 13.01.2016, 06:36 [ТС] | ||||||
|
Спасибо! Работает!
Если не сложно можете ответить на пару вопросов: 1. Для чего нужна конструкция?
3. Почему WM_USER+1?
0
|
||||||
|
Супер-модератор
|
||||
| 13.01.2016, 13:06 | ||||
|
0
|
||||
| 13.01.2016, 13:06 | |
|
Помогаю со студенческими работами здесь
15
Нужно, чтобы при закрытии второй формы первая опять становилась видимой Нужно при нажатии checkbox чтобы кнопка становилась активна Нужен таймер в Simulinkе, который бы запускался при появлении сигнала и отключался через определенное время Как совершить действие после определенного промежутка времени?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
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, то после закрытия окошка. . .
|
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|