Проблемы с перерисовкой в DirectShow
От: Leo_Kov  
Дата: 07.01.03 20:32
Оценка:
При использовании DirectShow у меня возникла проблема при перерисовке окна видео в MFC приложении: при ресайзе оно не всегда перерисовывается.

В SDK сказано:

Note: MFC applications in which the video renderer is in a child window must have an empty WM_ERASEBKGND message handler in order for the video display area to repaint correctly.


Я создал наследника CStatic и переписал в нем обрaботчик

OnEraseBkgnd()
{
     return TRUE;
}

В этот статик ( я его засубклассил ) я и вывожу видео.

Вывод напрямую в статик дает тот же результат.

Также я делаю для него
m_Screen.ModifyStyle(0, WS_CLIPCHILDREN);

Этот метод позволяет решить вышеописанную проблему в не MFC ( API ) приложении. но не в MFC.

А теперь извечный вопрос: Кто виноват и что делать? :)


10.01.03 19:08: Перенесено модератором из 'Мультимедиа, графика, звук' в MFC — ХД
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.