Condividi tramite


Interfaccia IVideoWindow (control.h)

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

L'interfaccia IVideoWindow imposta le proprietà nella finestra video. Le applicazioni possono usarle per impostare il proprietario della finestra, la posizione e le dimensioni della finestra e altre proprietà.

Nota L'interfaccia IVMRWindowlessControl o IVMRWindowlessControl9 è ora preferita rispetto IVideoWindowa . Per altre informazioni, vedere Uso della modalità senza finestra.
 
Il filtro Del renderer video e Il gestore di filtri espongono entrambe questa interfaccia. Filter Graph Manager inoltra tutte le chiamate di metodo a Video Renderer. Inoltra anche determinati messaggi di finestra che il Renderer video deve ricevere, ad esempio WM_DISPLAYCHANGE. Poiché la finestra video è in genere un elemento figlio di una finestra dell'applicazione, il filtro non riceverà in caso contrario questi messaggi. Pertanto si basa su Filter Graph Manager per inoltrarli.

Nella maggior parte dei casi, un'applicazione deve eseguire una query su Filter Graph Manager per questa interfaccia e non chiamare direttamente il filtro, a causa del problema di messaggistica appena descritto. Tuttavia, se il grafico del filtro ha più di un renderer video, Filter Graph Manager comunica solo con uno di essi, selezionato arbitrariamente. Pertanto, se l'applicazione usa più finestre video, usare l'interfaccia IVideoWindow direttamente nei filtri. In tal caso, è necessario inoltrare i messaggi della finestra a ogni istanza di Video Renderer usando il metodo IVideoWindow::NotifyOwnerMessage .

Per evitare che la finestra video venga sfarfallata durante le repaint, eseguire l'override della gestione predefinita per il messaggio WM_ERASEBKGND e non cancellare la finestra. Per le applicazioni MFC, eseguire l'override di CWnd::OnEraseBkgnd con un gestore vuoto.

Le proprietà impostate su un renderer video persistono tra connessioni successive e disconnessioni.

Poiché questa interfaccia è compatibile con l'automazione, tutti i valori booleani vengono definiti come OAFALSE (0) e OATRUE (–1).

Codici di errore: Se il filtro del renderer video non è connesso a un altro filtro, tutti i metodi restituiscono il codice di errore VFW_E_NOT_CONNECTED. Per l'implementazione di Filter Graph Manager, se il grafico non contiene un filtro del renderer video, tutti i metodi restituiscono E_NOINTERFACE. Si noti che Filter Graph Manager espone l'interfaccia anche quando il grafico non contiene un renderer video, in modo che un'applicazione possa eseguire query per l'interfaccia prima di compilare il grafico.

Filtrare gli sviluppatori: È possibile usare la classe CBaseVideoWindow per implementare questa interfaccia.

Ereditarietà

L'interfaccia IVideoWindow eredita dall'interfaccia IDispatch . IVideoWindow include anche questi tipi di membri:

Metodi

L'interfaccia IVideoWindow include questi metodi.

 
IVideoWindow::get_AutoShow

Il metodo get_AutoShow esegue una query se il renderer video visualizza automaticamente la finestra video quando riceve i dati video.
IVideoWindow::get_BackgroundPalette

Il metodo get_BackgroundPalette esegue una query sul fatto che la finestra video si renda conto della relativa tavolozza in background.
IVideoWindow::get_BorderColor

Il metodo get_BorderColor recupera il colore visualizzato intorno ai bordi del rettangolo di destinazione.
IVideoWindow::get_Caption

Il metodo get_Caption recupera la finestra video didascalia.
IVideoWindow::get_FullScreenMode

Il metodo get_FullScreenMode esegue una query se il renderer video è in modalità schermo intero.
IVideoWindow::get_Height

Il metodo get_Height recupera l'altezza della finestra video.
IVideoWindow::get_Left

Il metodo get_Left recupera la coordinata dell'asse x della finestra video.
IVideoWindow::get_MessageDrain

Il metodo get_MessageDrain recupera la finestra che riceve i messaggi del mouse e della tastiera dalla finestra video, se presente.
IVideoWindow::get_Owner

Il metodo get_Owner recupera la finestra padre della finestra del video, se presente.
IVideoWindow::get_Top

Il metodo get_Top recupera la coordinata y della finestra video.
IVideoWindow::get_Visible

Il metodo get_Visible esegue una query sul fatto che la finestra video sia visibile.
IVideoWindow::get_Width

Il metodo get_Width recupera la larghezza della finestra video.
IVideoWindow::get_WindowState

Il metodo get_WindowState esegue una query sul fatto che la finestra video sia visibile, nascosta, ridotta al minimo o ingrandita.
IVideoWindow::get_WindowStyle

Il metodo get_WindowStyle recupera gli stili della finestra nella finestra video.
IVideoWindow::get_WindowStyleEx

Il metodo get_WindowStyleEx recupera gli stili di finestra estesi nella finestra video.
IVideoWindow::GetMaxIdealImageSize

Il metodo GetMaxIdealImageSize recupera le dimensioni massime dell'immagine ideale per l'immagine video.
IVideoWindow::GetMinIdealImageSize

Il metodo GetMinIdealImageSize recupera le dimensioni minime ideali per l'immagine video.
IVideoWindow::GetRestorePosition

Il metodo GetRestorePosition recupera la posizione della finestra ripristinata.
IVideoWindow::GetWindowPosition

Il metodo GetWindowPosition recupera la posizione della finestra video.
IVideoWindow::HideCursor

Il metodo HideCursor mostra o nasconde il cursore quando il mouse viene posizionato sulla finestra video.
IVideoWindow::IsCursorHidden

Il metodo IsCursorHidden esegue una query sul fatto che il cursore sia nascosto.
IVideoWindow::NotifyOwnerMessage

Il metodo NotifyOwnerMessage inoltra un messaggio alla finestra video.
IVideoWindow::p ut_AutoShow

Il metodo put_AutoShow specifica se il renderer video visualizza automaticamente la finestra video quando riceve dati video.
IVideoWindow::p ut_BackgroundPalette

Il metodo put_BackgroundPalette specifica se la finestra video realizza la relativa tavolozza in background.
IVideoWindow::p ut_BorderColor

Il metodo put_BorderColor imposta il colore visualizzato intorno ai bordi del rettangolo di destinazione.
IVideoWindow::p ut_Caption

Il metodo put_Caption imposta la finestra video didascalia.
IVideoWindow::p ut_FullScreenMode

Il metodo put_FullScreenMode abilita o disabilita il rendering video a schermo intero.
IVideoWindow::p ut_Height

Il metodo put_Height imposta l'altezza della finestra video.
IVideoWindow::p ut_Left

Il metodo put_Left imposta la coordinata x della finestra video.
IVideoWindow::p ut_MessageDrain

Il metodo put_MessageDrain specifica una finestra per ricevere messaggi da mouse e tastiera dalla finestra video.
IVideoWindow::p ut_Owner

Il metodo put_Owner specifica una finestra padre per la finestra video.
IVideoWindow::p ut_Top

Il metodo put_Top specifica la coordinata y della finestra video.
IVideoWindow::p ut_Visible

Il metodo put_Visible mostra o nasconde la finestra video.
IVideoWindow::p ut_Width

Il metodo put_Width specifica la larghezza della finestra video.
IVideoWindow::p ut_WindowState

Il metodo put_WindowState mostra, nasconde, riduce al minimo o ottimizza la finestra video.
IVideoWindow::p ut_WindowStyle

Il metodo put_WindowStyle imposta gli stili della finestra nella finestra video.
IVideoWindow::p ut_WindowStyleEx

Il metodo put_WindowStyleEx imposta gli stili di finestra estesi nella finestra video.
IVideoWindow::SetWindowForeground

Il metodo SetWindowForeground posiziona la finestra video nella parte superiore dell'ordine Z.
IVideoWindow::SetWindowPosition

Il metodo SetWindowPosition imposta la posizione della finestra video.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione control.h (includere Dshow.h)

Vedi anche

Idispatch