Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Обработка события 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]


> Управление разумеется передастся процедуре второй кнопки.


Это кто тебе сказал?


Наверх

Титульная страница Поиск, карта сайта Написать письмо