IVideoWindow-Schnittstelle (control.h)
[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]
Die IVideoWindow
Schnittstelle legt Eigenschaften für das Videofenster fest. Anwendungen können damit den Fensterbesitzer, die Position und Dimensionen des Fensters und andere Eigenschaften festlegen.
IVideoWindow
bevorzugt. Weitere Informationen finden Sie unter Verwenden des Fensterlosen Modus.In den meisten Fällen sollte eine Anwendung den Filter graph-Manager für diese Schnittstelle abfragen und den Filter aufgrund des soeben beschriebenen Messagingproblems nicht direkt aufrufen. Wenn das Filterdiagramm jedoch über mehr als einen Videorenderer verfügt, kommuniziert der Filtergraph-Manager nur mit einem von ihnen, die willkürlich ausgewählt werden. Wenn Ihre Anwendung mehrere Videofenster verwendet, verwenden Sie daher die IVideoWindow
-Schnittstelle direkt für die Filter. In diesem Fall müssen Sie Fensternachrichten mithilfe der IVideoWindow::NotifyOwnerMessage-Methode an jeden Video Renderer instance weiterleiten.
Um zu verhindern, dass das Videofenster während der Neubemalung flimmert, überschreiben Sie die Standardbehandlung für die WM_ERASEBKGND Meldung, und löschen Sie das Fenster nicht. (Für MFC-Anwendungen überschreiben Sie CWnd::OnEraseBkgnd mit einem leeren Handler.)
Eigenschaften, die für einen Videorenderer festgelegt werden, bleiben zwischen aufeinander folgenden Verbindungen und Trennungen erhalten.
Da diese Schnittstelle automationskompatibel ist, werden alle booleschen Werte als OAFALSE (0) und OATRUE (–1) definiert.
Fehlercodes: Wenn der Videorendererfilter nicht mit einem anderen Filter verbunden ist, geben alle Methoden den Fehlercode VFW_E_NOT_CONNECTED zurück. Wenn das Diagramm für die Implementierung des Filter Graph-Managers keinen Videorendererfilter enthält, geben alle Methoden E_NOINTERFACE zurück. Beachten Sie, dass der Filter Graph-Manager die Schnittstelle auch dann verfügbar macht, wenn der Graph keinen Videorenderer enthält, sodass eine Anwendung die Schnittstelle abfragen kann, bevor sie den Graph erstellt.
Filterentwickler: Sie können die CBaseVideoWindow-Klasse verwenden, um diese Schnittstelle zu implementieren.
Vererbung
Die IVideoWindow-Schnittstelle erbt von der IDispatch-Schnittstelle . IVideoWindow verfügt auch über folgende Arten von Membern:
Methoden
Die IVideoWindow-Schnittstelle verfügt über diese Methoden.
IVideoWindow::get_AutoShow Die get_AutoShow-Methode fragt ab, ob der Videorenderer beim Empfangen von Videodaten automatisch das Videofenster anzeigt. |
IVideoWindow::get_BackgroundPalette Die get_BackgroundPalette-Methode fragt ab, ob das Videofenster seine Palette im Hintergrund realisiert. |
IVideoWindow::get_BorderColor Die get_BorderColor-Methode ruft die Farbe ab, die an den Rändern des Zielrechtecks angezeigt wird. |
IVideoWindow::get_Caption Die get_Caption-Methode ruft das videofenster Untertitel ab. |
IVideoWindow::get_FullScreenMode Die get_FullScreenMode-Methode fragt ab, ob sich der Videorenderer im Vollbildmodus befindet. |
IVideoWindow::get_Height Die get_Height-Methode ruft die Höhe des Videofensters ab. |
IVideoWindow::get_Left Die get_Left-Methode ruft die x-Achsenkoordinate des Videofensters ab. |
IVideoWindow::get_MessageDrain Die get_MessageDrain-Methode ruft das Fenster ab, das Maus- und Tastaturnachrichten aus dem Videofenster empfängt, sofern vorhanden. |
IVideoWindow::get_Owner Die get_Owner-Methode ruft ggf. das übergeordnete Fenster des Videofensters ab. |
IVideoWindow::get_Top Die get_Top-Methode ruft die y-Koordinate des Videofensters ab. |
IVideoWindow::get_Visible Die get_Visible-Methode fragt ab, ob das Videofenster sichtbar ist. |
IVideoWindow::get_Width Die get_Width-Methode ruft die Breite des Videofensters ab. |
IVideoWindow::get_WindowState Die get_WindowState-Methode fragt ab, ob das Videofenster sichtbar, ausgeblendet, minimiert oder maximiert ist. |
IVideoWindow::get_WindowStyle Die get_WindowStyle-Methode ruft die Fensterstile im Videofenster ab. |
IVideoWindow::get_WindowStyleEx Die get_WindowStyleEx-Methode ruft die erweiterten Fensterstile im Videofenster ab. |
IVideoWindow::GetMaxIdealImageSize Die GetMaxIdealImageSize-Methode ruft die maximale ideale Bildgröße für das Videobild ab. |
IVideoWindow::GetMinIdealImageSize Die GetMinIdealImageSize-Methode ruft die minimale ideale Größe für das Videobild ab. |
IVideoWindow::GetRestorePosition Die GetRestorePosition-Methode ruft die wiederhergestellte Fensterposition ab. |
IVideoWindow::GetWindowPosition Die GetWindowPosition-Methode ruft die Position des Videofensters ab. |
IVideoWindow::HideCursor Die HideCursor-Methode zeigt oder blendet den Cursor aus, wenn die Maus über dem Videofenster positioniert ist. |
IVideoWindow::IsCursorHidden Die IsCursorHidden-Methode fragt ab, ob der Cursor ausgeblendet ist. |
IVideoWindow::NotifyOwnerMessage Die NotifyOwnerMessage-Methode leitet eine Nachricht an das Videofenster weiter. |
IVideoWindow::p ut_AutoShow Die put_AutoShow-Methode gibt an, ob der Videorenderer das Videofenster automatisch anzeigt, wenn er Videodaten empfängt. |
IVideoWindow::p ut_BackgroundPalette Die put_BackgroundPalette-Methode gibt an, ob das Videofenster seine Palette im Hintergrund realisiert. |
IVideoWindow::p ut_BorderColor Die put_BorderColor-Methode legt die Farbe fest, die an den Rändern des Zielrechtecks angezeigt wird. |
IVideoWindow::p ut_Caption Die put_Caption-Methode legt das Videofenster Untertitel fest. |
IVideoWindow::p ut_FullScreenMode Die put_FullScreenMode-Methode aktiviert oder deaktiviert das Rendern von Vollbildvideos. |
IVideoWindow::p ut_Height Die put_Height-Methode legt die Höhe des Videofensters fest. |
IVideoWindow::p ut_Left Die put_Left-Methode legt die x-Koordinate des Videofensters fest. |
IVideoWindow::p ut_MessageDrain Die put_MessageDrain-Methode gibt ein Fenster an, in dem Maus- und Tastaturnachrichten aus dem Videofenster empfangen werden sollen. |
IVideoWindow::p ut_Owner Die put_Owner-Methode gibt ein übergeordnetes Fenster für das Videofenster an. |
IVideoWindow::p ut_Top Die put_Top-Methode gibt die y-Koordinate des Videofensters an. |
IVideoWindow::p ut_Visible Die put_Visible-Methode zeigt das Videofenster an oder blendet es aus. |
IVideoWindow::p ut_Width Die put_Width-Methode gibt die Breite des Videofensters an. |
IVideoWindow::p ut_WindowState Mit der put_WindowState-Methode wird das Videofenster angezeigt, ausgeblendet, minimiert oder maximiert. |
IVideoWindow::p ut_WindowStyle Die put_WindowStyle-Methode legt die Fensterstile im Videofenster fest. |
IVideoWindow::p ut_WindowStyleEx Die put_WindowStyleEx-Methode legt die erweiterten Fensterstile im Videofenster fest. |
IVideoWindow::SetWindowForeground Die SetWindowForeground-Methode platziert das Videofenster oben in der Z-Reihenfolge. |
IVideoWindow::SetWindowPosition Die SetWindowPosition-Methode legt die Position des Videofensters fest. |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | control.h (include Dshow.h) |