Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En esta nota se describen las convenciones de nomenclatura y numeración de identificadores que MFC 2.0 usa para los recursos, comandos, cadenas, controles y ventanas secundarias.
Las convenciones de nomenclatura y numeración de identificadores de MFC están diseñadas para cumplir los siguientes requisitos:
Proporcione un estándar coherente de nomenclatura de identificadores que se usa en la biblioteca MFC y las aplicaciones MFC compatibles con el editor de recursos de Visual C++. Esto facilita al programador interpretar el tipo y el origen de un recurso a partir de su identificador.
Resalte la fuerte relación de 1 a 1 entre determinados tipos de identificadores.
Se ajusta a los estándares ya usados para asignar nombres a identificadores en Windows.
Particione el espacio de numeración de identificadores. Los números de identificador se pueden asignar mediante los recursos editados por el programador, MFC, Windows y Visual C++. La creación de particiones adecuada ayudará a evitar la duplicación de números de identificador.
Convención de nomenclatura de prefijos de identificador
Se pueden producir varios tipos de identificadores en una aplicación. La convención de nomenclatura de identificadores de MFC define distintos prefijos para distintos tipos de recursos.
MFC usa el prefijo "IDR_" para indicar un identificador de recurso que se aplica a varios tipos de recursos. Por ejemplo, para una ventana de marco determinada, MFC usa el mismo prefijo "IDR_" para indicar un recurso de menú, acelerador, cadena e icono. En la tabla siguiente se muestran los distintos prefijos y su uso:
Prefijo | Uso |
---|---|
IDR_ | Para varios tipos de recursos (se usan principalmente para menús, aceleradores y cintas de opciones). |
IDD_ | Para los recursos de plantilla de diálogo (por ejemplo, IDD_DIALOG1). |
IDC_ | Para los recursos del cursor. |
IDI_ | Para los recursos de icono. |
BID_ | Para los recursos de mapa de bits. |
IDENTIFICADORES_ | Para los recursos de cadena. |
Dentro de un recurso DIALOG, MFC sigue estas convenciones:
Prefijo o etiqueta | Uso |
---|---|
IDOK, IDCANCEL | Para identificadores de botón de inserción estándar. |
IDC_ | Para otros controles de diálogo. |
El prefijo "IDC_" también se usa para cursores. Este conflicto de nomenclatura no suele ser un problema porque una aplicación típica tendrá pocos cursores y muchos controles de diálogo.
Dentro de un recurso de menú, MFC sigue estas convenciones:
Prefijo | Uso |
---|---|
IDM_ | Para los elementos de menú que no usan la arquitectura de comandos de MFC. |
IDENTIFICACIÓN_ | Para los comandos de menú que usan la arquitectura de comandos de MFC. |
Los comandos que siguen la arquitectura de comandos de MFC deben tener un controlador de comandos ON_COMMAND y pueden tener un controlador de ON_UPDATE_COMMAND_UI. Si estos controladores de comandos siguen la arquitectura de comandos de MFC, funcionarán correctamente si están enlazados a un comando de menú, un botón de barra de herramientas o un botón de barra de diálogo. El mismo prefijo "ID_" también se usa para una cadena de solicitud de menú que se muestra en la barra de mensajes del programa. La mayoría de los elementos de menú de la aplicación deben seguir las convenciones de comando de MFC. Todos los identificadores de comando estándar (por ejemplo, ID_FILE_NEW) siguen esta convención.
MFC también usa "IDP_" como una forma especializada de cadenas (en lugar de "IDS_"). Las cadenas con el prefijo "IDP_" son mensajes, es decir, cadenas usadas en los cuadros de mensaje. Las cadenas "IDP_" pueden contener "%1" y "%2" como marcadores de posición de cadenas determinadas por el programa. Las cadenas "IDP_" normalmente tienen temas de ayuda asociados a ellas y las cadenas "IDS_" no. Las cadenas "IDP_" siempre se localizan y es posible que las cadenas "IDS_" no se localicen.
La biblioteca MFC también usa el prefijo "IDW_" como una forma especializada de identificadores de control (en lugar de "IDC_"). Estos identificadores se asignan a ventanas secundarias, como vistas y divisores por las clases de marco. Los identificadores de implementación de MFC tienen el prefijo "AFX_".
Convención de ID-Numbering
En la tabla siguiente se enumeran los intervalos válidos para los identificadores de los tipos específicos. Algunos de los límites son límites de implementación técnicos y otros son convenciones diseñadas para evitar que los identificadores entren en colisión con identificadores predefinidos de Windows o implementaciones predeterminadas de MFC.
Se recomienda encarecidamente definir todos los identificadores dentro de los intervalos recomendados. El límite inferior de estos intervalos es 1 porque no se usa 0. Se recomienda usar la convención común y usar 100 o 101 como el primer identificador.
Prefijo | Tipo de recurso | Intervalo válido |
---|---|---|
IDR_ | varios | De 1 a 0x6FFF |
IDD_ | plantillas de cuadro de diálogo | De 1 a 0x6FFF |
IDC_,IDI_,IDB_ | cursores, iconos, mapas de bits | De 1 a 0x6FFF |
IDS_, IDP_ | cadenas generales | De 1 a 0x7FFF |
IDENTIFICACIÓN_ | Comandos | 0x8000 a través de 0xDFFF |
IDC_ | controles | De 8 a 0xDFFF |
Motivos para estos límites de intervalos:
Por convención, no se usa el valor de identificador de 0.
Las limitaciones de implementación de Windows restringen los identificadores de recursos verdaderos para que sean menores o iguales que 0x7FFF.
El marco interno de MFC reserva estos intervalos:
0x7000 a través de 0x7FFF (consulte afxres.h)
0xE000 a través de 0xEFFF (consulte afxres.h)
De 16000 a 18000 (véase afxribbonres.h)
Estos intervalos pueden cambiar en futuras implementaciones de MFC.
Varios comandos del sistema Windows usan el intervalo de 0xF000 a través de 0xFFFF.
Los identificadores de control de 1 a 7 están reservados para controles estándar como IDOK y IDCANCEL.
El intervalo de 0x8000 a través de 0xFFFF para cadenas está reservado para los mensajes de menú para los comandos.