Compartir a través de


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 está delimitada por una línea de puntos hasta que se arrastra al cuadro de diálogo. Al agregar un control a un cuadro de diálogo con el método de arrastrar y soltar, se asigna al control una altura estándar adecuada 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 de Botón BN_CLICKED
Control de Casilla de verificación BN_CLICKED
Control Cuadro combinado CBN_SELCHANGE
Control de edición EN_CHANGE
Cuadro de grupo (no aplicable)
Control de cuadro de lista LBN_SELCHANGE
Control de botón de radio BN_CLICKED
Control de texto estático (no aplicable)
Control de imagen (no aplicable)
Control de Edición Avanzada 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 giro UDN_DELTAPOS
Control de progreso NM_CUSTOMDRAW
Control de tecla de acceso rápido NM_OUTOFMEMORY
Control de lista LVN_ITEMCHANGE
Control de árbol TVN_SELCHANGE
Control de pestañas TCN_SELCHANGE
Control de animación ACN_START
Control de selector de fecha y hora DTN_DATETIMECHANGE
Control Calendario de mes MCN_SELCHANGE
Control de dirección IP IPN_FIELDCHANGED
Control de cuadro combinado extendido
Control personalizado 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 un subtítulo.

  • 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

Consulte también

Editor de cuadros de diálogo