Controles de cuadro de diálogo (C++)
Puede agregar controles a un cuadro de diálogo mediante la pestaña Editor de diálogos de la ventana Cuadro de herramientas, que le permite elegir el control que le interesa y arrastrarlo al cuadro de diálogo. De forma predeterminada, la ventana Cuadro de herramientas está establecida de modo que se oculta automáticamente. Aparece como una pestaña en el margen izquierdo de la solución cuando el Editor de diálogos está abierto. De todos modos, puede anclar la ventana Cuadro de herramientas en su posición. Para ello, seleccione el botón Ocultar automáticamente en la esquina superior derecha de la ventana. Para obtener más información sobre cómo controlar el comportamiento de esta ventana, consulte Administración de ventanas.
La forma más rápida de agregar controles a un cuadro de diálogo, cambiar la posición de los controles existentes o mover controles de un cuadro de diálogo a otro es usar el método de arrastrar y colocar. La posición del control aparece destacada con una línea de puntos hasta que se coloca en el cuadro de diálogo. Al agregar un control a un cuadro de diálogo con el método de arrastrar y colocar, se asigna al control un alto estándar adecuado para ese tipo de control.
Al agregar un control a un cuadro de diálogo o cambiar su posición, su ubicación final podría determinarse mediante guías o márgenes, o si tiene activada la cuadrícula de diseño.
Una vez que haya agregado un control al cuadro de diálogo, puede cambiar propiedades como su leyenda en la ventana Propiedades. También puede seleccionar varios controles y cambiar sus propiedades a la vez.
Para obtener más información sobre el Editor de diálogos, consulte Cómo agregar, editar o eliminar controles, Cómo diseñar controles y Cómo definir el acceso y los valores de control.
Para obtener más información sobre los controles y cuadros de diálogo, consulte Clases de control, Clases de cuadro de diálogo y Estilos de barra de desplazamiento.
Los controles estándar disponibles en el cuadro de herramientas con eventos predeterminados son:
Nombre del control | Evento predeterminado |
---|---|
Control Button | BN_CLICKED |
Control Casilla | BN_CLICKED |
Control Cuadro combinado | CBN_SELCHANGE |
Editar control | EN_CHANGE |
Cuadro de grupo | (no aplicable) |
Control List Box | LBN_SELCHANGE |
Control Botón de radio | BN_CLICKED |
Control Texto estático | (no aplicable) |
Control de imagen | (no aplicable) |
Control Rich Edit 2.0 | EN_CHANGE |
Control de barra de desplazamiento | NM_THEMECHANGED |
Nota:
Para obtener más información sobre el uso del control RichEdit 1.0 con MFC, consulte Uso del control RichEdit 1.0 con MFC y Ejemplos del control RichEdit.
Los controles comunes de Windows disponibles en el cuadro de herramientas que ofrecen una mayor funcionalidad son:
Nombre del control | Evento predeterminado |
---|---|
Control deslizante | NM_CUSTOMDRAW |
Control de número | UDN_DELTAPOS |
Control de progreso | NM_CUSTOMDRAW |
Control de tecla activa | NM_OUTOFMEMORY |
Control de lista | LVN_ITEMCHANGE |
Control de árbol | TVN_SELCHANGE |
Control Tab | TCN_SELCHANGE |
Control de animación | ACN_START |
Control Date Time Picker | DTN_DATETIMECHANGE |
Control Calendario de mes | MCN_SELCHANGE |
Control IP Address | IPN_FIELDCHANGED |
Control De cuadro combinado extendido | |
Custom (control) | TTN_GETDISPINFO |
Controles personalizados
El Editor de diálogos permite usar controles personalizados o de usuario existentes en una plantilla de cuadro de diálogo.
Nota:
Los controles personalizados en este sentido no deben confundirse con los controles ActiveX. A veces, los controles ActiveX se denominaban controles personalizados OLE. Además, no confunda estos controles con los controles dibujados por el propietario en Windows.
Esta funcionalidad está pensada para permitirle usar controles distintos de los que proporciona Windows. En tiempo de ejecución, el control está asociado a una clase de Windows (no es lo mismo que una clase de C++). Una manera más común de realizar la misma tarea consiste en instalar cualquier control, como un control estático, en el cuadro de diálogo. Después, en tiempo de ejecución, en la función OnInitDialog, quite ese control y reemplácelo por su propio control personalizado.
Nota:
Esta técnica es antigua. Hoy en día, se recomienda en la mayoría de los casos escribir un control ActiveX o una subclase de un control común de Windows.
En el caso de estos controles personalizados, tiene las limitaciones siguientes:
Establecer la ubicación en el cuadro de diálogo.
Escribir una leyenda.
Identificar el nombre de la clase de Windows del control, ya que el código de la aplicación debe registrar el control con este nombre.
Escribir un valor hexadecimal de 32 bits que establezca el estilo del control.
Establecer el estilo extendido.
Requisitos
Win32