Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.008 c
15-1232756069
Nic
2009-01-24 03:14
2009.04.05
Выбор CMS


15-1233407051
Piter
2009-01-31 16:04
2009.04.05
Шикарный номер из украинского КВН а


2-1234501149
Гарик
2009-02-13 07:59
2009.04.05
OnShow(self)


15-1233900281
123-ий
2009-02-06 09:04
2009.04.05
Перенос данных из одной БД в другую


15-1233290194
Slider007
2009-01-30 07:36
2009.04.05
С днем рождения ! 30 января 2009 пятница




   Наверх