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

Вниз

Проблемы с DSTrackBar   Найти похожие ветки 

 
Pavia ©   (2007-10-18 01:01) [0]

Сталкулся с такой проблемой. Есть фильтор SampleGrabber
В нем идет в колбэк функции захват снимка. В нем ниже следующий код

SampleGrabber1.GetBitmap(bp, pBuffer, BufferLen);
Memo1.Lines.add(IntToStr(GetRValue(BP.Canvas.Pixels[xvideo,yvideo])));


Как только кидаю на форму DSTrackBar программа виснит на выводе в Memo1.


 
Сергей М. ©   (2007-10-18 08:44) [1]

Для начала убедись в том, что колбэк осуществляется в основном потоке процесса.


 
Pavia ©   (2007-10-18 13:04) [2]

Я бы проверил. Вот только как это сделать?  У меня только один поток.
А чего там DSPack творит я не знаю. Хотя судя по коду он никаких других потоков не создает.


 
Сергей М. ©   (2007-10-18 13:34) [3]


> как это сделать?


В теле колбэк-функции напиши:

if GetCurrentThreadId = MainThreadId then
 MesageBox(0, "Основной", "", mb_ok)
else
 MesageBox(0, "Дополнительный", "", mb_ok)


 
Pavia ©   (2007-10-18 13:50) [4]

Поток "Дополнительный". Я так понимаю нужно синхронизировать потоки. Может подскажешь как?


 
Сергей М. ©   (2007-10-18 16:07) [5]

Посылай (SendMessage, PostMessage) окну формы, на которой расположен Memo, некое предопределенное сообщение, при получении которого код формы обратится к контролам этой формы и сделает то что тебе нужно.



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

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

Наверх




Память: 0.47 MB
Время: 0.02 c
15-1233787788
Германн
2009-02-05 01:49
2009.04.05
Телефон, телефонный кабель и RJ разъём


2-1235022461
Alexandra
2009-02-19 08:47
2009.04.05
Как передать Values в DBGrid?


4-1207672562
TCrash
2008-04-08 20:36
2009.04.05
Перечень дисков


15-1233483473
killaTank
2009-02-01 13:17
2009.04.05
Авторские права


15-1233843681
stas
2009-02-05 17:21
2009.04.05
Эксперты: Развитие технологий приведет к гибели человечества