Control ComboBox
El control ComboBox muestra una lista desplegable de valores predefinidos y un campo de edición en el que el usuario puede escribir un valor. Para asociar este control a una propiedad de cadena o entero, escriba el nombre de la propiedad en la columna Property de la tabla Control.
Atributos de control
Puede usar los atributos siguientes con este control. Para cambiar el valor de un atributo mediante un evento, suscriba el control a un ControlEvent en la tabla EventMapping y enumere el identificador del atributo en la columna Attribute. Escriba el identificador de ControlEvent en la columna Event.
Identificador de atributo | Bit hexadecimal | Descripción |
---|---|---|
IndirectPropertyName | Este es el nombre de una propiedad indirecta asociada al control. Si se establece el bit de atributo indirecto, el control muestra o cambia el valor de la propiedad que tiene este nombre. Si se establece el bit de atributo indirecto, este nombre también es el valor de la propiedad que aparece en la columna Property de la tabla Control. | |
Posición | Posición del control en el cuadro de diálogo. Especifique el ancho, el alto y las coordenadas del control de la esquina izquierda del control en las columnas Width, Height, X e Y de la tabla Control. Use unidades del instalador para la longitud y la distancia. |
|
PropertyName | Este es el nombre de la propiedad asociada a este control. Si no se establece el bit de atributo indirecto, el control muestra o cambia el valor de la propiedad que tiene este nombre. Este atributo se especifica en la columna Property de la tabla Control. | |
PropertyValue | Valor actual de la propiedad que este control muestra o cambia. Si no se establece el bit de atributo Indirect, este es el valor de PropertyName. Si se establece el bit de atributo Indirect, este es el valor de IndirectPropertyName. Si el atributo cambia, el control refleja el nuevo valor. | |
Texto | Para establecer la fuente y el estilo de fuente de una cadena de texto, anteponga la cadena de caracteres mostrados con {\style} o {&style}, Donde style es un identificador que aparece en la columna TextStyle de la tabla TextStyle. Si ninguno de estos elementos está presente, pero la propiedad DefaultUIFont está definida como un estilo de texto válido, se usará esa fuente. Para especificar el número de caracteres que el usuario puede especificar, anexe {n} después de cualquier especificación de fuente, donde n es un entero positivo. |
|
Visible | 0x00000000 0x00000001 |
Control oculto. Control visible. Incluya este bit en la palabra de bits de la columna Attributes de la tabla Control para que el control esté visible u oculto al crearlo. Un control se puede ocultar o mostrar también mediante la tabla ControlCondition. |
Enabled | 0x00000000 0x00000002 |
Control en estado deshabilitado. Control con el estado habilitado. Incluya este bit en la palabra de bits de la columna Attributes de la tabla Control para habilitar el control al crearlo. También se puede habilitar o deshabilitar un control mediante la tabla ControlCondition. |
Sunken | 0x00000000 0x00000004 |
Muestra el estilo visual predeterminado. Muestra el control con un aspecto 3D, con profundidad. Incluya estos bits en la palabra de bit de la columna Attributes de la tabla Control. |
Indirecto | 0x00000000 0x00000008 |
El control muestra o cambia el valor de la propiedad en la columna Property de la tabla Control. El control muestra o cambia el valor de la propiedad que tiene el identificador que aparece en la columna Property de la tabla Control. Determina si se hace referencia indirectamente a la propiedad asociada a este control. |
Entero | 0x00000000 0x00000010 |
La propiedad asociada al control es un valor de cadena. La propiedad asociada al control es un valor entero. Incluya este bit en la palabra de bits de la columna Attributes de la tabla Control para establecer este atributo al crear el control. |
RTLRO | 0x00000000 0x00000020 |
El texto del control se muestra en orden de lectura de izquierda a derecha. El texto del control se muestra en orden de lectura de derecha a izquierda. |
RightAligned | 0x00000000 0x00000040 |
El texto del control está alineado a la izquierda. El texto del control está alineado a la derecha. |
LeftScroll | 0x00000000 0x00000080 |
La barra de desplazamiento se encuentra a la derecha del control. La barra de desplazamiento se encuentra a la izquierda del control. |
BiDi | 0x000000E0 | Establezca este valor para una combinación de los atributos RTLRO, RightAligned y LeftScroll. |
Sorted | No establecido 0x00010000 |
Los elementos se muestran en orden alfabético. Los elementos se muestran en el orden que se especifica en la tabla ListView. El control consulta la tabla ComboBox y, si se establece el bit de estilo Sorted, el control ComboBox tiene el estilo CBS_SORT y muestra los elementos según lo especificado por Ordering. Si no se establece este bit de estilo, los elementos se muestran en orden alfabético. |
ComboList | No establecido 0x00020000 |
Cuadro combinado con campo de edición. El cuadro combinado con campo de edición se reemplaza por un campo de texto estático. |
UsersLanguage | 0x00000000 0x00100000 |
Fuentes creadas en la página de códigos de la base de datos. Fuentes creadas en la página de códigos de la interfaz de usuario predeterminada del usuario. |
Observaciones
Este control se puede crear a partir de la clase COMBOBOX mediante la función CreateWindowEx. Tiene los estilos CBS_AUTOHSCROLL, WS_TABSTOP, WS_GROUP y WS_CHILD. Si el bit ComboList está activado, también tiene el estilo CBS_DROPDOWNLIST. De lo contrario, tiene el estilo CBS_DROPDOWN.
La longitud del texto que se puede especificar se puede limitar poniendo un número de 0 a 2147483646 entre llaves al principio del campo Text de la tabla Control. Por ejemplo, si el campo de texto comienza por {80}, la longitud de la cadena está limitada a 80 caracteres. Si no se proporciona dicho límite en la tabla o si se especifica 0, la longitud se establece en el máximo posible (2147483646 caracteres). Un valor negativo o no numérico generará un error.
Para la compatibilidad con lectores de pantalla, al crear un cuadro de diálogo con un control ComboBox como primer control activo, debe convertir el campo de texto del campo de edición en el primer control activo de la tabla Dialog. Dado que el texto estático no puede recibir el foco, cuando se crea el cuadro de diálogo, el campo de edición tendrá el foco inicialmente según lo previsto. Esto garantiza que los lectores de pantalla muestren la información correcta.