Freigeben über


CBaseControlWindow-Klasse

[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.]

cbasecontrolwindow-Klassenhierarchie

Die CBaseControlWindow-Klasse implementiert die IVideoWindow-Schnittstelle und steuert den externen Zugriff auf den zugeordneten Filter. Sie müssen das CBaseControlWindow-Objekt mit dem Filter synchronisieren, indem Sie einen Zeiger auf ein kritisches Abschnittssynchronisierungsobjekt übergeben. Die CBaseControlWindow-Klasse stellt eine Reihe von Methoden bereit, die Eigenschafteneinstellungen zurückgeben, ohne sich mit diesem kritischen Abschnitt zu befassen. Wenn Sie beispielsweise CBaseControlWindow::get_AutoShow aufrufen, um den Wert des m_bAutoShow Datenmember abzurufen, wird der kritische Abschnitt gesperrt. Der Filter verfügt möglicherweise bereits über einen gesperrten internen kritischen Abschnitt, der die Sperrhierarchie des Filters verletzen könnte. Stattdessen gibt der Aufruf der CBaseControlWindow::IsAutoShowEnabled-Memberfunktion den erforderlichen Wert zurück, ohne dass sich dies auf den kritischen Abschnitt auswirkt.

Alle von CBaseControlWindow implementierten IVideoWindow-Methoden erfordern, dass der Filter ordnungsgemäß mit seinem Upstream-Filter verbunden ist. Aus diesem Grund benötigen Klassenobjekte einen Synchronisierungspin, den Sie durch Aufrufen der CBaseControlWindow::SetControlWindowPin-Methode festlegen. Wenn Sie eine IVideoWindow-Methode aufrufen, überprüft das CBaseControlWindow-Objekt , ob die Pin noch verbunden ist.

Geschützte Datenmember BESCHREIBUNG
m_bAutoShow Ergebnis, wenn sich der Zustand ändert.
m_bCursorHidden Bestimmung, ob der Cursor angezeigt oder ausgeblendet wird.
m_BorderColour Farbe des aktuellen Fensterrahmens.
m_hwndDrain Fensterhandle, in dem empfangene Nachrichten gepostet werden.
m_hwndOwner Besitzendes Fenster.
m_pFilter Zeiger auf den eigenen Medienfilter.
m_pInterfaceLock Extern definierter kritischer Abschnitt.
m_pPin Steuerung der Medientypen für die Verbindung.
Elementfunktionen BESCHREIBUNG
CBaseControlWindow Erstellt ein CBaseControlWindow-Objekt .
DoGetWindowStyle Ruft entweder die typischen oder erweiterten Fensterstile ab.
DoSetWindowStyle Legt die typischen oder erweiterten Fensterstile fest.
GetBorderColour Ruft die aktuelle Rahmenfarbe ab. Dies ist eine Hilfselementfunktion.
GetOwnerWindow Ruft das besitzende Fenster ab. Dies ist eine Hilfselementfunktion.
IsAutoShowEnabled Ruft Informationen darüber ab, ob das Videofenster automatisch angezeigt wird, wenn der Renderingfilter angehalten oder ausgeführt wird.
IsCursorHidden Ruft den aktuellen Zustand des m_bCursorHidden Datenmembers ab, ohne den kritischen Abschnitt zu sperren. Dies ist eine Hilfselementfunktion.
MöglicherweiseEatMessage Verteilt Nachrichten an das übergeordnete Fenster.
SetControlWindowPin Benachrichtigt das Objekt des Pins, auf den es angewendet wird.
IVideoWindow-Methoden BESCHREIBUNG
get_AutoShow Ruft die aktuelle Einstellung für das AutoShow-Flag ab.
get_BackgroundPalette Ruft die realisierte Palette im Hintergrundflag ab.
get_BorderColor Ruft die aktuelle Rahmenfarbe ab.
get_Caption Ruft das aktuelle Fenster Untertitel ab.
get_ FullScreenMode Ruft den aktuellen Vollbildmodus ab.
get_Height Ruft die aktuelle Fensterhöhe ab.
get_Left Ruft die aktuelle linke Fensterkoordinate ab.
GetMaxIdealImageSize Ruft die maximale Größe des idealen Bilds ab.
get_MessageDrain Ruft die aktuelle Nachrichtenentwässerung ab.
GetMinIdealImageSize Ruft die Mindestgröße des idealen Bilds ab.
get_Owner Ruft das Handle des übergeordneten Fensters ab.
GetRestorePosition Ruft die Position ab, an der das Fenster wiederhergestellt wird, wenn es maximiert oder minimiert wird.
get_Top Ruft die y-Koordinate für den oberen Rand des Fensters ab.
get_Visible Ruft die aktuelle Sichtbarkeitseinstellung des Fensters ab.
get_Width Ruft die Breite des Fensters ab.
GetWindowPosition Ruft die aktuellen Fensterkoordinaten ab.
get_WindowState Ruft den aktuellen Zustand des Fensters ab.
get_WindowStyle Ruft die Standardfensterstile ab.
get_WindowStyleEx Ruft die erweiterten Fensterstile ab.
HideCursor Blendet den Cursor aus oder zeigt diese an.
IsCursorHidden Ruft den aktuellen Zustand des m_bCursorHidden-Datenmembers ab.
NotifyOwnerMessage Übergibt Nachrichten, die an besitzereigene Fenster gesendet werden.
put_AutoShow Legt die AutoShow-Eigenschaft fest.
put_BackgroundPalette Legt ein Flag fest, um die Palette im Hintergrund zu erkennen.
put_BorderColor Legt die aktuelle Rahmenfarbe fest.
put_Caption Legt das aktuelle Fenster Untertitel fest.
put_ FullScreenMode Legt den Vollbildmodus fest.
put_Height Legt die aktuelle Fensterhöhe fest.
put_Left Legt die linke Koordinate für das Fenster fest.
put_MessageDrain Legt das Nachrichtenablauffenster fest.
put_Owner Legt das übergeordnete Fensterhandle von Microsoft Win32 fest.
put_Top Legt die Position für den oberen Bereich des Fensters fest.
put_Visible Blendet das Fenster aus oder zeigt es an.
put_Width Legt die Breite des Fensters fest.
put_WindowState Legt den Status des Fensters fest.
put_WindowStyle Legt die Standardfensterstile fest.
put_WindowStyleEx Legt die Formatvorlagen für erweiterte Fenster fest.
SetWindowForeground Legt das Fenster im Vordergrund fest.
SetWindowPosition Legt die Fensterposition fest.

 

Siehe auch

DirectShow-Basisklassen