Freigeben über


CBaseControlVideo.SetDefaultTargetRect-Methode

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Die SetDefaultTargetRect -Methode legt das Standardziel-Videorechteck (rein virtuell) fest. Dies ist eine interne Memberfunktion, die aufgerufen wird, wenn das Quellrechteck zurückgesetzt wird.

Syntax

virtual HRESULT SetDefaultTargetRect() = 0;

Parameter

Diese Methode hat keine Parameter.

Rückgabewert

Gibt einen HRESULT-Wert zurück.

Bemerkungen

Abgeleitete Klassen sollten dies überschreiben, um das Zielvideorechteck zurückzusetzen. Es wird von der Memberfunktion CBaseControlVideo::SetDefaultDestinationPosition aufgerufen.

Im folgenden Beispiel wird eine Implementierung dieser Funktion in einer abgeleiteten Klasse veranschaulicht.

// This is called when you reset the default target rectangle.
HRESULT CVideoText::SetDefaultTargetRect()
{
    VIDEOINFO *pVideoInfo = (VIDEOINFO *) m_pRenderer->m_mtIn.Format();
    BITMAPINFOHEADER *pHeader = HEADER(pVideoInfo);
    RECT TargetRect = {0,0,m_Size.cx,m_Size.cy};
    m_pRenderer->m_DrawImage.SetTargetRect(&TargetRect);
    return NOERROR;
}

In diesem Beispiel ist CVideoText eine von CBaseControlVideo abgeleitete Klasse, m_pRenderer ein Objekt einer klasse enthält, die von CBaseVideoRenderer abgeleitet ist, und der m_DrawImage Datenmember, der in der abgeleiteten Klasse definiert ist, enthält ein CDrawImage-Objekt . Das m_mtIn Datenmember, das ebenfalls in der abgeleiteten Klasse definiert ist, enthält ein CMediaType-Objekt mit dem Medientyp des Eingabenadels.

Anforderungen

Anforderung Wert
Header
Ctlutil.h (include Streams.h)
Bibliothek
Strmbase.lib (Einzelhandelsbuilds);
Strmbasd.lib (Debugbuilds)

Siehe auch

CBaseControlVideo-Klasse