CBaseControlWindow 類別

[與此頁面 相關的功能 DirectShow是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]

cbasecontrolwindow 類別階層

CBaseControlWindow類別會實作IVideoWindow介面,並控制其相關聯篩選的外部存取。 您必須將指標傳遞給重要區段同步處理物件,以將 CBaseControlWindow 物件與篩選同步處理。 CBaseControlWindow類別提供一些方法,可傳回屬性設定,而不需處理這個重要區段。 例如,呼叫 CBaseControlWindow::get_AutoShow 來擷取 資料 成員m_bAutoShow的值會鎖定重要區段。 不過,篩選可能已經有鎖定的內部關鍵區段,這可能會違反篩選準則的鎖定階層。 相反地,呼叫 CBaseControlWindow::IsAutoShowEnabled 成員函式會傳回必要的值,而不會影響關鍵區段。

所有 CBaseControlWindow 實作 IVideoWindow 方法都需要篩選準則與其上游篩選準則正確連線。 基於這個理由,類別物件需要同步處理釘選,您可以藉由呼叫 CBaseControlWindow::SetControlWindowPin 方法來設定。 每當您呼叫 IVideoWindow 方法時, CBaseControlWindow 物件會檢查針腳是否仍然連線。

受保護的資料成員 Description
m_bAutoShow 當狀態變更時的結果。
m_bCursorHidden 判斷資料指標是顯示還是隱藏。
m_BorderColour 目前視窗框線的色彩。
m_hwndDrain 接收之訊息的視窗控制碼會張貼到其中。
m_hwndOwner 擁有視窗。
m_pFilter 擁有媒體篩選的指標。
m_pInterfaceLock 外部定義的 critical 區段。
m_pPin 控制連線的媒體類型。
成員函數 Description
CBaseControlWindow 建構 CBaseControlWindow 物件。
DoGetWindowStyle 擷取一般或延伸視窗樣式。
DoSetWindowStyle 設定一般或延伸視窗樣式。
GetBorderColour 擷取目前的框線色彩。 這是協助程式成員函式。
GetOwnerWindow 擷取擁有視窗。 這是協助程式成員函式。
IsAutoShowEnabled 擷取轉譯篩選暫停或執行時,是否自動顯示視訊視窗的相關資訊。
IsCursorHidden 擷取 m_bCursorHidden 資料成員的目前狀態,而不鎖定重要區段。 這是協助程式成員函式。
可能EatMessage 將訊息散發至父視窗。
SetControlWindowPin 通知套用釘選的物件。
IVideoWindow 方法 Description
get_AutoShow 擷取目前的 AutoShow 旗標設定。
get_BackgroundPalette 擷取背景旗標中的實現調色盤。
get_BorderColor 擷取目前的框線色彩。
get_Caption 擷取目前視窗標題。
get_ FullScreenMode 擷取目前的全螢幕模式。
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 設定目前視窗標題。
put_ FullScreenMode 設定全螢幕模式。
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 基類