Objetos de janela
MFC fornece a classe CWnd para encapsular o HWND identificador de uma janela.O CWnd é um objeto de janela C++, distinto de HWND que representa um Windows janela mas que o contém.Use CWnd derivar sua própria janela filho de classes ou usar uma das muitas classes do MFC derivadas de CWnd.Classe CWnd é a classe base para todas as janelas, incluindo quadro janelas, caixas de diálogo, janelas filho, controles e as barras de controle, como barras de ferramentas.Uma boa compreensão de a relação entre um objeto de janela C++ e um HWND é crucial para a programação eficaz com MFC.
MFC fornece algumas funcionalidade padrão e o gerenciamento do windows, mas você pode derivar sua própria classe de CWnd e usar suas funções de membro para personalizar a funcionalidade fornecida.Você pode criar filho windows construindo um CWnd objeto e chamada seu criar membro função, em seguida, personalizar as janelas filho usando CWnd funções de membro.Você pode incorporar objetos derivados de CView, como modos de exibição de formulário ou modos de exibição de árvore, em uma janela do quadro.E suporte a vários modos de exibição de documentos por meio de painéis de divisão, fornecidos pela classe CSplitterWnd.
Cada objeto derivado da classe CWnd contém um mapa da mensagem, através do qual você pode mapear mensagens do Windows ou IDs de comando para seus próprios manipuladores.
A literatura geral sobre programação para Windows é um bom recurso para aprender a usar o CWnd funções de membro que encapsulam o HWND APIs.
Funções para operar um CWnd
CWnde sua janela classes derivadas fornecer construtores, destruidores e funções de membro para inicializar o objeto, criam as estruturas subjacentes do Windows e acessar o encapsulado HWND.CWndtambém fornece funções de membro que encapsulam APIs do Windows para enviar mensagens, acessando o estado da janela, convertendo de coordenadas, atualizar, rolagem, acessando a área de transferência e muitas outras tarefas.A maioria das APIs de gerenciamento de janela Windows tirar uma HWND argumento são encapsulados como funções de membro CWnd.Os nomes de funções e seus parâmetros são preservados na CWnd função de membro.Para obter detalhes sobre as APIs do Windows encapsulado pelo CWnd, consulte a classe CWnd.
CWnd e mensagens do Windows
Uma das principais finalidades dos CWnd é fornecer uma interface para manipulação de mensagens do Windows, como WM_PAINT ou WM_MOUSEMOVE.Muitas das funções de membro de CWnd são manipuladores de mensagens padrão — aquelas que começam com o identificador afx_msg e o prefixo "Em", como OnPaint e OnMouseMove.Tratamento e mapeamento de mensagem abrange mensagens e mensagem manipulação em detalhes.Essas informações se aplica igualmente ao windows do framework e aqueles que você cria para fins especiais.
O que você deseja saber mais sobre?
Contextos de dispositivo: objetos que tornam o Windows desenho dispositivo independente
Objetos gráficos: canetas, pincéis, fontes, bitmaps, paletas, regiões