Criando janelas com moldura de documento
Criação de documento/exibição mostra como o objeto CDocTemplate orquestra a criação da janela de quadro, do documento e da exibição, bem como a conexão de todos eles. Três argumentos de CRuntimeClass para o construtor CDocTemplate
especificam as classes de janela de quadro, documento e exibição que o modelo de documento cria dinamicamente em resposta a comandos do usuário, como o comando Novo no menu Arquivo ou o comando Nova Janela em um menu Janela do MDI. O modelo de documento armazena essas informações para uso posterior quando cria uma janela de quadro para uma exibição e um documento.
Para que o mecanismo RUNTIME_CLASS funcione corretamente, suas classes derivadas de janela de quadro devem ser declaradas com a macro DECLARE_DYNCREATE. Isso ocorre porque a estrutura precisa criar janelas de quadro de documento usando o mecanismo de construção dinâmica da classe CObject
.
Quando o usuário escolhe um comando que cria um documento, a estrutura chama o modelo de documento para criar o objeto de documento, sua exibição e a janela de quadro que mostrará a exibição. Quando cria a janela de quadro de documento, o modelo de documento cria um objeto da classe apropriada – uma classe derivada de CFrameWnd para um aplicativo SDI ou de CMDIChildWnd para um aplicativo MDI. Em seguida, a estrutura chama a função membro LoadFrame do objeto de janela de quadro para obter informações sobre a criação de recursos e criar a janela do Windows. A estrutura anexa o identificador da janela ao objeto de janela de quadro. Em seguida, ela cria a exibição como uma janela filho da janela de quadro do documento.
Tenha cuidado ao decidir quando inicializar seu objeto derivado de CWnd
.
O que mais você deseja saber?
Derivando uma classe de CObject (o mecanismo de criação dinâmica)
Criação de documento/exibição (modelos e criação de janela de quadro)