Проверка Enabled кнопки через неизвестное количество времени
#1
Отправлено 26 января 2009 - 16:24
Есть такая ситуация:
Приложение выполняет определенные действия. Пока они не выполнены, кнопка, на которую завязана проверка - Dizabled. Как только кнопка станет активной, значит действия приложения завершены. Проблема в том, что неизвестно сколько времени пройдет прежде чем нужная кнопка станет активной. Может быть каждый раз по-разному.
Подскажите, пожалуйста, каким способом можно реализовать проверку!
Спасибо
#2
Отправлено 26 января 2009 - 18:19
Я так понимаю, речь идет об ожидании наступления некоторого события, когда приложение что-то просчитывает. Попробуйте конструкцию типа:Привет!
Есть такая ситуация:
Приложение выполняет определенные действия. Пока они не выполнены, кнопка, на которую завязана проверка - Dizabled. Как только кнопка станет активной, значит действия приложения завершены. Проблема в том, что неизвестно сколько времени пройдет прежде чем нужная кнопка станет активной. Может быть каждый раз по-разному.
Подскажите, пожалуйста, каким способом можно реализовать проверку!
Спасибо
[ ]TIMER hTimer [ ]INTEGER iTimeout = 30 [ ] [ ]hTimer = TimerCreate() [ ]TimerStart( hTimer ) [ ] [+]while( TimerValue( hTimer ) < iTimeout ) [+]if( wRequiredObject.bEnabled ) [ ]break [ ] [ ]TimerStop( hTimer ) [ ]TimerDestroy( hTimer )
В данном примере втечение 30 секунд (значение iTimeout) мы ожидаем, что объект wRequiredObject активируется. Цикл заканчивается либо когда нужный объект активируется, либо когда выйдет таймаут
#3
Отправлено 27 января 2009 - 08:28
Я так понимаю, речь идет об ожидании наступления некоторого события, когда приложение что-то просчитывает. Попробуйте конструкцию типа:Привет!
Есть такая ситуация:
Приложение выполняет определенные действия. Пока они не выполнены, кнопка, на которую завязана проверка - Dizabled. Как только кнопка станет активной, значит действия приложения завершены. Проблема в том, что неизвестно сколько времени пройдет прежде чем нужная кнопка станет активной. Может быть каждый раз по-разному.
Подскажите, пожалуйста, каким способом можно реализовать проверку!
Спасибо[ ]TIMER hTimer [ ]INTEGER iTimeout = 30 [ ] [ ]hTimer = TimerCreate() [ ]TimerStart( hTimer ) [ ] [+]while( TimerValue( hTimer ) < iTimeout ) [+]if( wRequiredObject.bEnabled ) [ ]break [ ] [ ]TimerStop( hTimer ) [ ]TimerDestroy( hTimer )
В данном примере втечение 30 секунд (значение iTimeout) мы ожидаем, что объект wRequiredObject активируется. Цикл заканчивается либо когда нужный объект активируется, либо когда выйдет таймаут
Благодарю! Сейчас попробою.
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных