Compartir a través de


Crear ventanas de marco de documento

Creación de documentos y vistas muestra cómo el objeto CDocTemplate organiza la creación de la ventana de marco, el documento y la vista y la conexión de todos juntos. Tres argumentos CRuntimeClass del constructor CDocTemplate especifican las clases de ventana de marco, documento y vista que la plantilla de documentos crea dinámicamente en respuesta a comandos de usuario, como el comando Nuevo del menú Archivo o el comando Nueva ventana de un menú Ventana MDI. La plantilla de documento almacena esta información para su uso posterior cuando crea una ventana de marco para una vista y un documento.

Para que el mecanismo de RUNTIME_CLASS funcione correctamente, las clases derivadas de ventana de marco deben declararse con la macro DECLARE_DYNCREATE. Esto se debe a que el marco de trabajo necesita crear ventanas de marco de documento mediante el mecanismo de construcción dinámico de la clase CObject.

Cuando el usuario elige un comando que crea un documento, el marco llama a la plantilla de documento para crear el objeto de documento, su vista y la ventana de marco que mostrará la vista. Cuando crea la ventana de marco de documento, la plantilla de documento crea un objeto de la clase adecuada: una clase derivada de CFrameWnd para una aplicación SDI o de CMDIChildWnd para una aplicación MDI. A continuación, el marco llama a la función miembro LoadFrame del objeto frame-window para obtener información de la creación de recursos y para crear la ventana de Windows. El marco adjunta el identificador de ventana al objeto frame-window. A continuación, crea la vista como una ventana secundaria de la ventana del marco del documento.

Tenga cuidado al decidir cuándo inicializar el objeto derivado de CWnd.

Qué más quieres saber

Consulte también

Uso de ventanas de marco