CBaseControlWindow クラス

[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayerIMFMediaEngineAudio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]

cbasecontrolwindow クラス階層

CBaseControlWindow クラスは IVideoWindow インターフェイスを実装し、関連付けられているフィルターへの外部アクセスを制御します。 CBaseControlWindow オブジェクトをフィルターと同期するには、重要なセクション同期オブジェクトへのポインターを渡します。 CBaseControlWindow クラスには、この重要なセクションを処理せずにプロパティ設定を返すメソッドが多数用意されています。 たとえば、 CBaseControlWindow::get_AutoShow を呼び出して 、m_bAutoShow データ メンバーの値を取得すると、クリティカル セクションがロックされます。 ただし、フィルターにはロックされた内部クリティカル セクションが既にある可能性がありますが、フィルターのロック階層に違反する可能性があります。 代わりに、 CBaseControlWindow::IsAutoShowEnabled メンバー関数を呼び出すと、クリティカル セクションに影響を与えることなく、必要な値が返されます。

CBaseControlWindow で実装されているすべての IVideoWindow メソッドでは、フィルターをアップストリーム フィルターと正しく接続する必要があります。 このため、クラス オブジェクトには、 CBaseControlWindow::SetControlWindowPin メソッドを呼び出して設定する同期ピンが必要です。 IVideoWindow メソッドを呼び出すたびに、CBaseControlWindow オブジェクトはピンがまだ接続されていることを確認します。

プロテクト データ メンバー 説明
m_bAutoShow 状態が変更されたときの結果。
m_bCursorHidden カーソルを表示するか非表示にするかを決定します。
m_BorderColour 現在のウィンドウ罫線の色。
m_hwndDrain 受信したメッセージが投稿されるウィンドウ ハンドル。
m_hwndOwner 所有ウィンドウ。
m_pFilter 所有するメディア フィルターへのポインター。
m_pInterfaceLock 外部定義のクリティカル セクション。
m_pPin 接続のメディアの種類を制御します。
メンバー関数 説明
CBaseControlWindow CBaseControlWindow オブジェクトを構築します。
DoGetWindowStyle 一般的なウィンドウ スタイルまたは拡張ウィンドウ スタイルを取得します。
DoSetWindowStyle 一般的なウィンドウ スタイルまたは拡張ウィンドウ スタイルを設定します。
GetBorderColour 現在の罫線の色を取得します。 これはヘルパー メンバー関数です。
GetOwnerWindow 所有ウィンドウを取得します。 これはヘルパー メンバー関数です。
IsAutoShowEnabled レンダリング フィルターの一時停止または実行時にビデオ ウィンドウが自動的に表示されるかどうかに関する情報を取得します。
IsCursorHidden クリティカル セクションをロックせずに 、m_bCursorHidden データ メンバーの現在の状態を取得します。 これはヘルパー メンバー関数です。
可能性があるEatMessage 親ウィンドウにメッセージを配布します。
SetControlWindowPin 適用先のピンをオブジェクトに通知します。
IVideoWindow メソッド 説明
get_AutoShow 現在の AutoShow フラグ設定を取得します。
get_BackgroundPalette バックグラウンド フラグで、実現されたパレットを取得します。
get_BorderColor 現在の罫線の色を取得します。
get_Caption 現在のウィンドウ キャプションを取得します。
FullScreenMode のget_ 現在の全画面表示モードを取得します。
get_Height 現在のウィンドウの高さを取得します。
get_Left 現在の左ウィンドウ座標を取得します。
GetMaxIdealImageSize 理想的なイメージの最大サイズを取得します。
get_MessageDrain 現在のメッセージ ドレインを取得します。
GetMinIdealImageSize 理想的なイメージの最小サイズを取得します。
get_Owner 親ウィンドウ ハンドルを取得します。
GetRestorePosition 最大化または最小化されたときにウィンドウを復元する位置を取得します。
get_Top ウィンドウの上部の y 座標を取得します。
get_Visible ウィンドウの現在の表示設定を取得します。
get_Width ウィンドウの幅を取得します。
GetWindowPosition 現在のウィンドウ座標を取得します。
get_WindowState ウィンドウの現在の状態を取得します。
get_WindowStyle 標準のウィンドウ スタイルを取得します。
get_WindowStyleEx 拡張ウィンドウ スタイルを取得します。
HideCursor カーソルを非表示または表示します。
IsCursorHidden m_bCursorHidden データ メンバーの現在の状態を取得します。
NotifyOwnerMessage 所有しているウィンドウに送信されるメッセージを渡します。
put_AutoShow AutoShow プロパティを設定します。
put_BackgroundPalette パレットをバックグラウンドで実現するためのフラグを設定します。
put_BorderColor 現在の罫線の色を設定します。
put_Caption 現在のウィンドウ キャプションを設定します。
FullScreenMode のput_ 全画面表示モードを設定します。
put_Height 現在のウィンドウの高さを設定します。
put_Left ウィンドウの左座標を設定します。
put_MessageDrain メッセージ ドレイン ウィンドウを設定します。
put_Owner Microsoft Win32 親ウィンドウ ハンドルを設定します。
put_Top ウィンドウの上部の位置を設定します。
put_Visible ウィンドウを非表示または表示します。
put_Width ウィンドウの幅を設定します。
put_WindowState ウィンドウの状態を設定します。
put_WindowStyle 標準のウィンドウ スタイルを設定します。
put_WindowStyleEx 拡張ウィンドウ のスタイルを設定します。
SetWindowForeground 前景のウィンドウを設定します。
SetWindowPosition ウィンドウの位置を設定します。

 

関連項目

DirectShow 基本クラス