Метод CBaseControlVideo.SetTargetRect
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]
Метод SetTargetRect
задает текущий целевой прямоугольник (чисто виртуальный). Это внутренняя функция-член, которая вызывается при изменении прямоугольника назначения.
Синтаксис
virtual HRESULT SetTargetRect(
RECT *pTargetRect
) = 0;
Параметры
-
pTargetRect
-
Указатель на прямоугольник назначения.
Возвращаемое значение
Возвращает значение HRESULT .
Комментарии
Производные классы должны переопределять это, чтобы знать, когда изменяется прямоугольник назначения. Он вызывается из следующих функций-членов.
- CBaseControlVideo::SetDestinationPosition
- CBaseControlVideo::p ut_DestinationLeft
- CBaseControlVideo::p ut_DestinationWidth
- CBaseControlVideo::p ut_DestinationTop
- CBaseControlVideo::p ut_DestinationHeight
В следующем примере показана реализация этой функции в производном классе.
HRESULT CVideoText::SetTargetRect(RECT *pTargetRect)
{
m_pRenderer->m_DrawImage.SetTargetRect(pTargetRect);
return NOERROR;
}
В этом примере CVideoText является классом, производным от CBaseControlVideo, m_pRenderer содержит объект класса, производного от CBaseVideoRenderer, а элемент данных m_DrawImage, определенный в производном классе, содержит объект CDrawImage .
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|