Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.04;
Скачать: CL | DM;

Вниз

Как запретить обработку сообщения, если объект уже Destroy ?   Найти похожие ветки 

 
greyserg   (2005-05-12 21:02) [0]

есть компонент , отображающий html документы

есть обработчик нажатия scroll кнопки и дальнейшего перемещения курсора (делаю SendMessage своего сообщения WMMouseScroll в mousеmove, если нажата средняя кнопка)
 
дело в том что, в процедуре обработки  сообщения WMMouseScroll цикл
который проверяет состояние нажатия scroll кнопки и не нажаты ли другие кнопки (клавиши)
а также в цикле есть Application.ProcessMessages; - для того чтобы отображался скроллируемый текст

делаю Free объекту , а  процедура обработки сообщения WMMouseScroll все еще пытается обработать сообщение и вываливается Access Violation

можно ли как-нибудь в destroy запретить обработку сообщения WMMouseScroll ?


 
VMcL ©   (2005-05-12 21:22) [1]

>>greyserg   (12.05.05 21:02)

>а также в цикле есть Application.ProcessMessages

Это неправильно.


 
greyserg   (2005-05-13 10:40) [2]

>VMcL

а как правильно ? Application.ProcessMessages нужно, чтобы моя обработка сообщения  WMMouseScroll не занимало всё процессорное время,а обрабатывались другие сообщения , WM_PAINT и т.д.

Кто-нибудь делал авто скроллинг при нажатом колесике ?

Мастера, помогите.


 
Семен Сорокин ©   (2005-05-13 10:48) [3]

попробуй для отрисовки Update (или Invalidate) вместо Application.ProcessMessages.

Еще как вариант использовать PostMessage(handle, CM_RELEASE, ...) вместо Free


 
Style ©   (2005-05-13 10:59) [4]

>>дело в том что, в процедуре обработки  сообщения >>WMMouseScroll цикл
>>который проверяет состояние нажатия scroll кнопки и не нажаты >>ли другие кнопки (клавиши)

Может стоит вынести проверку в отдельный поток?
и из WMMouseScroll делать PostMessage твоему потоку.
На Destroy придется дождаться его завершения или вырубить его.



Страницы: 1 вся ветка

Текущий архив: 2005.12.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
4-1127994105
Jolik
2005-09-29 15:41
2005.12.04
Непонятки с функцией CreateFileMapping...


10-1108540611
Карелин Артем
2005-02-16 10:56
2005.12.04
Как получить GUID объекта Automation?


10-1108398675
kostik78ua
2005-02-14 19:31
2005.12.04
ClientDataSet.Open


1-1131190336
_Sergey_
2005-11-05 14:32
2005.12.04
Удаление выделенных узлов TreeView


14-1131806272
Prohodil Mimo
2005-11-12 17:37
2005.12.04
Чем можно отконвертировать DOC в PDF ?