Вниз
Скачать: 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.01 c
2-1234344792
markers
2009-02-11 12:33
2009.04.05
Обращение к VCL объектам из потока


2-1234690810
Cobalt
2009-02-15 12:40
2009.04.05
Посоветуйте стандартный контрол


15-1233896321
Unitay
2009-02-06 07:58
2009.04.05
Помогите, очень ищу


15-1234034595
blackman
2009-02-07 22:23
2009.04.05
Что-то тормозить стало


15-1233633075
VirEx
2009-02-03 06:51
2009.04.05
Ветряк




   Наверх