Antarmuka IVideoWindow (control.h)

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan 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 Audio/Video Capture 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.]

Antarmuka IVideoWindow mengatur properti pada jendela video. Aplikasi dapat menggunakannya untuk mengatur pemilik jendela, posisi dan dimensi jendela, dan properti lainnya.

Catatan Antarmuka IVMRWindowlessControl atau IVMRWindowlessControl9 sekarang lebih disukai daripada IVideoWindow. Untuk informasi selengkapnya, lihat Menggunakan Mode Tanpa Jendela.
 
Filter Video Renderer dan Filter Graph Manager mengekspos antarmuka ini. Filter Graph Manager meneruskan semua panggilan metode ke Video Renderer. Ini juga meneruskan pesan jendela tertentu yang perlu diterima Oleh Perender Video, seperti WM_DISPLAYCHANGE. Karena jendela video biasanya merupakan anak dari jendela aplikasi, filter tidak akan menerima pesan-pesan ini. Oleh karena itu bergantung pada Filter Graph Manager untuk meneruskannya.

Dalam kebanyakan kasus, aplikasi harus meminta Filter Graph Manager untuk antarmuka ini, dan tidak memanggil filter secara langsung, karena masalah pesan yang baru saja dijelaskan. Namun, jika grafik filter memiliki lebih dari satu Perender Video, Filter Graph Manager hanya berkomunikasi dengan salah satunya, dipilih secara acak. Oleh karena itu, jika aplikasi Anda menggunakan beberapa jendela video, gunakan IVideoWindow antarmuka langsung pada filter. Dalam hal ini, Anda harus meneruskan pesan jendela ke setiap instans Video Renderer, menggunakan metode IVideoWindow::NotifyOwnerMessage .

Untuk mencegah jendela video berkedlip selama pengecatan ulang, ganti penanganan default untuk pesan WM_ERASEBKGND dan jangan hapus jendela. (Untuk aplikasi MFC, ganti CWnd::OnEraseBkgnd dengan handler kosong.)

Properti yang diatur pada perender video bertahan antara koneksi berturut-turut dan pemutusan sambungan.

Karena antarmuka ini kompatibel dengan Automation, semua nilai Boolean didefinisikan sebagai OAFALSE (0) dan OATRUE (–1).

Kode kesalahan: Jika filter perender video tidak tersambung ke filter lain, semua metode mengembalikan kode kesalahan VFW_E_NOT_CONNECTED. Untuk implementasi Filter Graph Manager, jika grafik tidak berisi filter perender video, semua metode mengembalikan E_NOINTERFACE. Perhatikan bahwa Filter Graph Manager mengekspos antarmuka bahkan ketika grafik tidak berisi perender video, sehingga aplikasi dapat mengkueri antarmuka sebelum membangun grafik.

Pengembang Filter: Anda dapat menggunakan kelas CBaseVideoWindow untuk membantu menerapkan antarmuka ini.

Warisan

Antarmuka IVideoWindow mewarisi dari antarmuka IDispatch . IVideoWindow juga memiliki jenis anggota berikut:

Metode

Antarmuka IVideoWindow memiliki metode ini.

 
IVideoWindow::get_AutoShow

Metode get_AutoShow mengkueri apakah perender video secara otomatis menampilkan jendela video saat menerima data video.
IVideoWindow::get_BackgroundPalette

Metode get_BackgroundPalette mengkueri apakah jendela video mewujudkan paletnya di latar belakang..
IVideoWindow::get_BorderColor

Metode get_BorderColor mengambil warna yang muncul di sekitar tepi persegi panjang tujuan.
IVideoWindow::get_Caption

Metode get_Caption mengambil jendela video caption.
IVideoWindow::get_FullScreenMode

Metode get_FullScreenMode mengkueri apakah perender video dalam mode layar penuh.
IVideoWindow::get_Height

Metode get_Height mengambil tinggi jendela video.
IVideoWindow::get_Left

Metode get_Left mengambil koordinat sumbu x jendela video.
IVideoWindow::get_MessageDrain

Metode get_MessageDrain mengambil jendela yang menerima pesan mouse dan keyboard dari jendela video, jika ada.
IVideoWindow::get_Owner

Metode get_Owner mengambil jendela induk jendela video, jika ada.
IVideoWindow::get_Top

Metode get_Top mengambil koordinat y jendela video.
IVideoWindow::get_Visible

Metode get_Visible meminta apakah jendela video terlihat.
IVideoWindow::get_Width

Metode get_Width mengambil lebar jendela video.
IVideoWindow::get_WindowState

Metode get_WindowState mengkueri apakah jendela video terlihat, tersembunyi, diminimalkan, atau dimaksimalkan.
IVideoWindow::get_WindowStyle

Metode get_WindowStyle mengambil gaya jendela pada jendela video.
IVideoWindow::get_WindowStyleEx

Metode get_WindowStyleEx mengambil gaya jendela yang diperluas pada jendela video.
IVideoWindow::GetMaxIdealImageSize

Metode GetMaxIdealImageSize mengambil ukuran gambar ideal maksimum untuk gambar video.
IVideoWindow::GetMinIdealImageSize

Metode GetMinIdealImageSize mengambil ukuran ideal minimum untuk gambar video.
IVideoWindow::GetRestorePosition

Metode GetRestorePosition mengambil posisi jendela yang dipulihkan.
IVideoWindow::GetWindowPosition

Metode GetWindowPosition mengambil posisi jendela video.
IVideoWindow::HideCursor

Metode HideCursor menampilkan atau menyembunyikan kursor saat mouse diposisikan di atas jendela video.
IVideoWindow::IsCursorHidden

Metode IsCursorHidden mengkueri apakah kursor disembunyikan.
IVideoWindow::NotifyOwnerMessage

Metode NotifyOwnerMessage meneruskan pesan ke jendela video.
IVideoWindow::p ut_AutoShow

Metode put_AutoShow menentukan apakah perender video secara otomatis menampilkan jendela video saat menerima data video.
IVideoWindow::p ut_BackgroundPalette

Metode put_BackgroundPalette menentukan apakah jendela video mewujudkan paletnya di latar belakang.
IVideoWindow::p ut_BorderColor

Metode put_BorderColor mengatur warna yang muncul di sekitar tepi persegi panjang tujuan.
IVideoWindow::p ut_Caption

Metode put_Caption mengatur jendela video caption.
IVideoWindow::p ut_FullScreenMode

Metode put_FullScreenMode memungkinkan atau menonaktifkan penyajian video layar penuh.
IVideoWindow::p ut_Height

Metode put_Height mengatur tinggi jendela video.
IVideoWindow::p ut_Left

Metode put_Left mengatur koordinat x jendela video.
IVideoWindow::p ut_MessageDrain

Metode put_MessageDrain menentukan jendela untuk menerima pesan mouse dan keyboard dari jendela video.
IVideoWindow::p ut_Owner

Metode put_Owner menentukan jendela induk untuk jendela video.
IVideoWindow::p ut_Top

Metode put_Top menentukan koordinat y dari jendela video.
IVideoWindow::p ut_Visible

Metode put_Visible menampilkan atau menyembunyikan jendela video.
IVideoWindow::p ut_Width

Metode put_Width menentukan lebar jendela video.
IVideoWindow::p ut_WindowState

Metode put_WindowState menunjukkan, menyembunyikan, meminimalkan, atau memaksimalkan jendela video.
IVideoWindow::p ut_WindowStyle

Metode put_WindowStyle mengatur gaya jendela pada jendela video.
IVideoWindow::p ut_WindowStyleEx

Metode put_WindowStyleEx mengatur gaya jendela yang diperluas pada jendela video.
IVideoWindow::SetWindowForeground

Metode SetWindowForeground menempatkan jendela video di bagian atas urutan Z.
IVideoWindow::SetWindowPosition

Metode SetWindowPosition mengatur posisi jendela video.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header control.h (termasuk Dshow.h)

Lihat juga

IDispatch