Metode CBaseControlVideo.SetDefaultTargetRect

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Pengambilan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine , dan Pengambilan Audio/Video di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Metode SetDefaultTargetRect ini menetapkan persegi panjang video target default (virtual murni). Ini adalah fungsi anggota internal yang dipanggil ketika persegi panjang sumber diatur ulang.

Sintaks

virtual HRESULT SetDefaultTargetRect() = 0;

Parameter

Metode ini tidak memiliki parameter.

Nilai kembali

Mengembalikan nilai HRESULT .

Keterangan

Kelas turunan harus mengambil alih ini untuk mengatur ulang persegi video tujuan. Ini dipanggil dari fungsi anggota CBaseControlVideo::SetDefaultDestinationPosition .

Contoh berikut menunjukkan implementasi fungsi ini di kelas turunan.

// 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;
}

Dalam contoh ini, CVideoText adalah kelas yang berasal dari CBaseControlVideo, m_pRenderer menyimpan objek kelas yang berasal dari CBaseVideoRenderer, dan anggota data m_DrawImage, yang ditentukan dalam kelas turunan, menyimpan objek CDrawImage . Anggota data m_mtIn, juga didefinisikan di kelas turunan, menyimpan objek CMediaType dengan jenis media pin input.

Persyaratan

Persyaratan Nilai
Header
Ctlutil.h (termasuk Streams.h)
Pustaka
Strmbase.lib (build ritel);
Strmbasd.lib (build debug)

Lihat juga

Kelas CBaseControlVideo