TN070: nomes de classe da janela MFC
Observação
A nota técnica a seguir não foi atualizada desde que foi incluída pela primeira vez na documentação online. Como resultado, alguns procedimentos e tópicos podem estar desatualizados ou incorretos. Para obter as informações mais recentes, é recomendável que você pesquise o tópico de interesse no índice de documentação online.
As janelas MFC usam um nome de classe criado dinamicamente que reflete os recursos da janela. O MFC gera nomes de classe dinamicamente para janelas de quadros, exibições e janelas pop-up produzidas pelo aplicativo. Caixas de diálogo e controles produzidos por um aplicativo MFC têm o nome fornecido pelo Windows para a classe de janela em questão.
Você pode substituir o nome de classe fornecido dinamicamente registrando uma classe de janela própria e usando-a em uma substituição de PreCreateWindow. Seus nomes de classe fornecidos pelo MFC se ajustam a um dos dois seguintes formatos:
Afx:%x:%x
Afx:%x:%x:%x:%x:%x
Os dígitos hexa que substituem os caracteres %x
são preenchidos usando dados da estrutura WNDCLASS. O MFC usa essa técnica para que várias classes C++ que exigem estruturas WNDCLASS idênticas possam compartilhar a mesma classe de janela registrada. Ao contrário da maioria dos aplicativos Win32 simples, os aplicativos MFC têm apenas um WNDPROC, portanto, você pode compartilhar facilmente estruturas WNDCLASS para poupar tempo e memória. Os valores substituíveis para os caracteres %x
mostrados acima são os seguintes:
WNDCLASS.hInstance
WNDCLASS.style
WNDCLASS.hCursor
WNDCLASS.hbrBackground
WNDCLASS.hIcon
O primeiro formato (Afx:%x:%x
) é usado quando hCursor, hbrBackground e hIcon são NULL.
Confira também
Observações técnicas por número
Observações técnicas por categoria
TN020: convenções de nomenclatura e numeração de ID