CMDIChildWnd

La classe CMDIChildWnd fornisce la funzionalità di un Windows finestra documenti multipli (MDI) interface bambino, insieme ai membri per la gestione della finestra.

Una finestra figlia MDI Guarda molto simile a una finestra tipica cornice, salvo che la finestra figlio MDI viene visualizzato all'interno di una finestra cornice MDI, piuttosto che sul desktop. Una finestra figlia MDI non dispone di una barra dei menu della propria, ma condivide invece il menu della finestra cornice MDI. Il quadro cambia automaticamente il menu cornice MDI per rappresentare la finestra figlio MDI attiva.

Per creare una finestra di figlio MDI utile per la vostra applicazione, derivare una classe da CMDIChildWnd. Aggiungere le variabili membro alla classe derivata per memorizzare i dati specifici dell'applicazione. Mappa di implementare funzioni di gestione dei messaggi membro e un messaggio nella classe derivata per specificare cosa succede quando i messaggi vengono indirizzati alla finestra.

Ci sono tre modi per la costruzione di una finestra figlia MDI:

Prima di chiamare Create o LoadFrame, è necessario costruire l'oggetto finestra cornice sull'heap utilizzando l'operatore new C++. Prima di chiamare Create è possibile registrare una classe finestra con la funzione globale AfxRegisterWndClass per impostare gli stili icona e di classe per il frame.

Utilizzare la funzione membro Create per passare i parametri di creazione del telaio come argomenti immediati.

LoadFrame richiede un minor numero di argomenti che Creae invece recupera i valori predefiniti per la maggior parte da risorse, compresa la didascalia del telaio, icona, tabella acceleratore e menu. Per essere accessibile da LoadFrame, tutte queste risorse devono avere lo stesso ID di risorsa (ad esempio, IDR_MAINFRAME).

Quando un oggetto CMDIChildWnd contiene documenti e visualizzazioni, essi vengono creati indirettamente dal framework anziché direttamente dal programmatore. L'oggetto CDocTemplate Orchestra la creazione della cornice, la creazione delle viste che contengono e la connessione delle viste al documento appropriato. I parametri del costruttore CDocTemplate specificano CRuntimeClass delle tre classi coinvolte (documento, telaio e vista). Viene utilizzato un oggetto CRuntimeClass dal framework per creare dinamicamente nuovi fotogrammi quando specificato dall'utente (ad esempio, utilizzando il comando Nuovo File o il comando MDI nuova finestra).

Una classe finestra cornice derivata da CMDIChildWnd deve essere dichiarata con DECLARE_DYNCREATE in modo che il meccanismo RUNTIME_CLASS sopra lavorare correttamente.

La classe CMDIChildWnd gran parte della sua implementazione predefinita eredita da CFrameWnd. Per un elenco dettagliato di queste funzionalità, consultare la descrizione della classe CFrameWnd . La classe CMDIChildWnd ha le seguenti caratteristiche aggiuntive:

Non utilizzare l'operatore delete C++ per distruggere una finestra cornice. Utilizzare CWnd:: DestroyWindow . L'implementazione di CFrameWnd di PostNcDestroy eliminerà l'oggetto C++ quando la finestra viene distrutto. Quando l'utente chiude la finestra cornice, gestore predefinito OnClose chiamerà DestroyWindow.

Per ulteriori informazioni su CMDIChildWnd, vedere Frame Window argomenti nel manuale del programmatore di Visual C++.

# include lt;afxwin.h>

Membri della classe |nbsp; Classe base | Gerarchia Chart

Campioninbsp; MFC Sample MDI | Esempio MFC MDIBIND | Esempio MFC MDIDOCVW | Esempio MFC SNAPVW

Vedere a&nchenbsp;CWnd, CMDIFrameWnd

Index