Classe CBaseControlWindow
[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.
La classe CBaseControlWindow implementa l'interfaccia IVideoWindow e controlla l'accesso esterno al filtro associato. È necessario sincronizzare l'oggetto CBaseControlWindow con il filtro passandolo a un puntatore a un oggetto di sincronizzazione della sezione critica. La classe CBaseControlWindow fornisce diversi metodi che restituiscono le impostazioni delle proprietà senza gestire questa sezione critica. Ad esempio, chiamando CBaseControlWindow::get_AutoShow per recuperare il valore del membro dati m_bAutoShow blocca la sezione critica. Il filtro potrebbe avere già una sezione interna bloccata critica, tuttavia, che potrebbe violare la gerarchia di blocco del filtro. La chiamata alla funzione membro CBaseControlWindow::IsAutoShowEnabled restituisce il valore richiesto senza influire sulla sezione critica.
Tutti i metodi IVideoWindow implementati da CBaseControlWindow richiedono la connessione corretta del filtro con il relativo filtro upstream. Per questo motivo, gli oggetti di classe richiedono un pin di sincronizzazione impostato chiamando il metodo CBaseControlWindow::SetControlWindowPin . Ogni volta che si chiama un metodo IVideoWindow , l'oggetto CBaseControlWindow verifica che il pin sia ancora connesso.
Membri dati protetti | Descrizione |
---|---|
m_bAutoShow | Risultato quando lo stato cambia. |
m_bCursorHidden | Determinazione del fatto che il cursore sia visualizzato o nascosto. |
m_BorderColour | Colore del bordo della finestra corrente. |
m_hwndDrain | Handle finestra a cui vengono pubblicati i messaggi ricevuti. |
m_hwndOwner | Finestra proprietaria. |
m_pFilter | Puntatore al filtro multimediale proprietario. |
m_pInterfaceLock | Sezione critica definita esternamente. |
m_pPin | Controllo dei tipi di supporti per la connessione. |
Funzioni di membro | Descrizione |
CBaseControlWindow | Costruisce un oggetto CBaseControlWindow . |
DoGetWindowStyle | Recupera gli stili di finestra tipici o estesi. |
DoSetWindowStyle | Imposta gli stili di finestra tipici o estesi. |
GetBorderColour | Recupera il colore del bordo corrente. Si tratta di una funzione membro helper. |
GetOwnerWindow | Recupera la finestra proprietaria. Si tratta di una funzione membro helper. |
IsAutoShowEnabled | Recupera informazioni sul fatto che la finestra video venga visualizzata automaticamente quando il filtro di rendering viene sospeso o eseguito. |
IsCursorHidden | Recupera lo stato corrente del membro dati m_bCursorHidden senza bloccare la sezione critica. Si tratta di una funzione membro helper. |
PossibilmenteEatMessage | Distribuisce i messaggi alla finestra padre. |
SetControlWindowPin | Notifica all'oggetto del pin a cui si applica. |
Metodi IVideoWindow | Descrizione |
get_AutoShow | Recupera l'impostazione del flag autoshow corrente. |
get_BackgroundPalette | Recupera la tavolozza realizzata nel flag di sfondo. |
get_BorderColor | Recupera il colore del bordo corrente. |
get_Caption | Recupera la finestra corrente didascalia. |
get_ FullScreenMode | Recupera la modalità schermo intero corrente. |
get_Height | Recupera l'altezza della finestra corrente. |
get_Left | Recupera la coordinata della finestra sinistra corrente. |
GetMaxIdealImageSize | Recupera le dimensioni massime dell'immagine ideale. |
get_MessageDrain | Recupera il svuotamento del messaggio corrente. |
GetMinIdealImageSize | Recupera le dimensioni minime dell'immagine ideale. |
get_Owner | Recupera l'handle della finestra padre. |
GetRestorePosition | Recupera la posizione in cui verrà ripristinata la finestra quando è ingrandita o ridotta al minimo. |
get_Top | Recupera la coordinata y per la parte superiore della finestra. |
get_Visible | Recupera l'impostazione di visibilità corrente della finestra. |
get_Width | Recupera la larghezza della finestra. |
GetWindowPosition | Recupera le coordinate correnti della finestra. |
get_WindowState | Recupera lo stato corrente della finestra. |
get_WindowStyle | Recupera gli stili di finestra standard. |
get_WindowStyleEx | Recupera gli stili di finestra estesi. |
HideCursor | Nasconde o visualizza il cursore. |
IsCursorHidden | Recupera lo stato corrente del membro dati m_bCursorHidden . |
NotifyOwnerMessage | Passa i messaggi inviati alle finestre proprietarie. |
put_AutoShow | Imposta la proprietà AutoShow. |
put_BackgroundPalette | Imposta un flag per realizzare la tavolozza in background. |
put_BorderColor | Imposta il colore del bordo corrente. |
put_Caption | Imposta la finestra corrente didascalia. |
put_ FullScreenMode | Imposta la modalità schermo intero. |
put_Height | Imposta l'altezza corrente della finestra. |
put_Left | Imposta la coordinata sinistra per la finestra. |
put_MessageDrain | Imposta la finestra di svuotamento dei messaggi. |
put_Owner | Imposta l'handle della finestra padre Di Microsoft Win32. |
put_Top | Imposta la posizione per la parte superiore della finestra. |
put_Visible | Nasconde o mostra la finestra. |
put_Width | Imposta la larghezza della finestra. |
put_WindowState | Imposta lo stato della finestra. |
put_WindowStyle | Imposta gli stili della finestra standard. |
put_WindowStyleEx | Imposta gli stili delle finestre estese. |
SetWindowForeground | Imposta la finestra in primo piano. |
SetWindowPosition | Imposta la posizione della finestra. |
Vedi anche