CBaseControlWindow 類別
[與此頁面 相關的功能 DirectShow是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]
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 | 設定視窗位置。 |
另請參閱