Compartir a través de


TN070: nombres de clase de ventana MFC

Nota:

La nota técnica siguiente no se ha actualizado desde que se incluyó por primera vez en la documentación en línea. Como resultado, algunos procedimientos y temas podrían estar obsoletos o incorrectos. Para obtener la información más reciente, se recomienda buscar el tema de interés en el índice de documentación en línea.

Las ventanas MFC usan un nombre de clase creado dinámicamente que refleja las características de la ventana. MFC genera nombres de clase dinámicamente para ventanas de marco, vistas y ventanas emergentes generadas por la aplicación. Los cuadros de diálogo y los controles generados por una aplicación MFC tienen el nombre proporcionado por Windows para la clase de ventana en cuestión.

Puede reemplazar el nombre de clase proporcionado dinámicamente registrando su propia clase de ventana y usándola en una invalidación de PreCreateWindow. Sus nombres de clase proporcionados por MFC se ajustan a una de las dos formas siguientes:

Afx:%x:%x
Afx:%x:%x:%x:%x:%x

Los dígitos hexadecimales que reemplazan los %x caracteres se rellenan a partir de datos de la estructura WNDCLASS . MFC usa esta técnica para que varias clases de C++ que requieran estructuras WNDCLASS idénticas puedan compartir la misma clase de ventana registrada. A diferencia de la mayoría de las aplicaciones Win32 sencillas, las aplicaciones MFC solo tienen un WNDPROC, por lo que puede compartir fácilmente estructuras WNDCLASS para ahorrar tiempo y memoria. Los valores reemplazables para los %x caracteres mostrados anteriormente son los siguientes:

  • WNDCLASS.hInstance

  • WNDCLASS.style

  • WNDCLASS.hCursor

  • WNDCLASS.hbrBackground

  • WNDCLASS.hIcon

La primera forma (Afx:%x:%x) se usa cuando hCursor, hbrBackground y hIconson null.

Consulte también

Notas técnicas por número
Notas Técnicas por Categoría
TN020: Convenciones de nomenclatura y numeración de identificadores