![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Обработка события onMouseMove
New555 © (2010-06-27 18:11:00)На форме два баттона. Для каждого описана процедура onMouseMove, которая выполняется достаточно долго. Предположим, что я навел мышку на первую кнопку и не дождавшись окончания процедуры перевел мышку на вторую кнопку. Управление разумеется передастся процедуре второй кнопки. Как сделать так, что бы после окончания процедуры второй кнопки управление не передавалось обратно процедуре первой кнопки, т.е. по окончании процедуры второй кнопки все процессы завершились?
И. Павел (2010-06-29 21:03:00) [1]> [0] New555 (27.06.10 18:11)
> не дождавшись
> окончания процедуры перевел мышку на вторую кнопку. Управление
> разумеется передастся процедуре второй кнопки.
У вас случайно в первой процедуре Application.ProcessMessages не вызывается?
MsGuns (2010-06-29 20:10:00) [2]>Как сделать так, что бы после окончания процедуры второй кнопки >управление не передавалось обратно процедуре первой кнопки, т.е. по >окончании процедуры второй кнопки все процессы завершились?
Очевидно, что Вы плохо себе представляете как выполняется Ваша программа. Начните с азов - почитайте, например уроки Ю.Зотова.
Плохиш (2010-06-27 23:15:00) [3]
> Предположим, что я навел мышку на первую кнопку и не дождавшись
> окончания процедуры перевел мышку на вторую кнопку. Управление
> разумеется передастся процедуре второй кнопки.
Ты больше таких глупостей не читай.
Второе событие, да и любое другое событие из очереди, будет выполнено после завершения выполняемого обработчика.
tesseract (2010-06-27 18:36:00) [4]
> А их как-то программно погасить можно
Нужно. Вообще неплохо описано в хелпе. Рекомендую таки почитать.
New555 (2010-06-27 18:26:00) [5]А их как-то программно погасить можно? Что можно написать последней строкой процедуры второй кнопки, что бы после окончания процедуры больше ничего не происходило?
tesseract (2010-06-27 18:24:00) [6]
> У меня почему-то так происходит.
Процедура накапливает незагашенные сообщения? Пока сообщения непогашены - они будут ждать обработки.
New555 (2010-06-27 18:20:00) [7]Импирическим путем установил. У меня почему-то так происходит.
tesseract (2010-06-27 18:19:00) [8]
> т.е. по окончании процедуры второй кнопки все процессы завершились?
Callback процедуры исполняются по факту. Если нужно что-то со временем, почему-бы не использовать таймер ?
Ega23 (2010-06-27 18:14:00) [9]
> Управление разумеется передастся процедуре второй кнопки.
Это кто тебе сказал?