Cuadro combinado (controles de Windows)
Esta sección contiene información sobre los elementos de programación usados con cuadros combinados. Un cuadro combinado es un tipo de control único, definido por la clase COMBOBOX, que combina gran parte de la funcionalidad de un cuadro de lista y un control de edición.
Descripciones
Tema | Contenido |
---|---|
Acerca de los cuadros combinados | En esta sección se describen los diferentes tipos de cuadros combinados. |
características de cuadro combinado de | En este documento se describen las características del cuadro combinado. |
usar cuadros combinados | Los ejemplos de código de esta sección muestran cómo realizar tareas asociadas a cuadros combinados. |
Funciones
Macros
Tema | Contenido |
---|---|
ComboBox_AddItemData | Agrega datos de elementos a la lista en un cuadro combinado en la ubicación especificada. Puede usar esta macro o enviar el mensaje de CB_ADDSTRING explícitamente. |
ComboBox_AddString | Agrega una cadena a una lista en un cuadro combinado. Si el cuadro combinado no tiene el estilo CBS_SORT, la cadena se agrega al final de la lista. De lo contrario, la cadena se inserta en la lista y la lista se ordena. Puede usar esta macro o enviar el mensaje de CB_ADDSTRING explícitamente. |
ComboBox_DeleteString | Elimina el elemento en la ubicación especificada de una lista en un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_DELETESTRING explícitamente. |
ComboBox_Dir | Agrega nombres a la lista mostrada por un cuadro combinado. La macro agrega los nombres de directorios y archivos que coinciden con una cadena especificada y un conjunto de atributos de archivo. También puede agregar letras de unidad asignadas a la lista en un cuadro combinado. Puede usar esta macro o enviar el mensaje de CB_DIR explícitamente. |
ComboBox_Enable | Habilita o deshabilita un control de cuadro combinado. |
ComboBox_FindItemData | Busca el primer elemento en una lista de cuadros combinados que tiene los datos de elementos especificados. Puede usar esta macro o enviar el mensaje CB_FINDSTRING explícitamente. |
ComboBox_FindString | Busca la primera cadena en una lista de cuadros combinados que comienza con la cadena especificada. Puede usar esta macro o enviar el mensaje CB_FINDSTRING explícitamente. |
ComboBox_FindStringExact | Busca la primera cadena en una lista de cuadros combinados que coincide exactamente con la cadena especificada, salvo que la búsqueda no distingue mayúsculas de minúsculas. Puede usar esta macro o enviar el mensaje CB_FINDSTRINGEXACT explícitamente. |
ComboBox_GetCount | Obtiene el número de elementos del cuadro de lista de un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_GETCOUNT explícitamente. |
ComboBox_GetCueBannerText | Obtiene el texto del banner de indicación que se muestra en el control de edición de un cuadro combinado. Use esta macro o envíe explícitamente el mensaje de CB_GETCUEBANNER. |
ComboBox_GetCurSel | Obtiene el índice del elemento seleccionado actualmente en un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_GETCURSEL explícitamente. |
ComboBox_GetDroppedControlRect | Recupera las coordenadas de pantalla de un cuadro combinado en su estado desplegable. Puede usar esta macro o enviar el mensaje CB_GETDROPPEDCONTROLRECT explícitamente. |
ComboBox_GetDroppedState | Determina si la lista desplegable de un control de cuadro combinado está visible. Puede usar esta macro o enviar el mensaje de CB_GETDROPPEDSTATE explícitamente. |
ComboBox_GetExtendedUI | Determina si un cuadro combinado usa la interfaz de usuario (UI) predeterminada o la interfaz de usuario extendida. Puede usar esta macro o enviar el mensaje CB_GETEXTENDEDUI explícitamente. |
ComboBox_GetItemData | Obtiene el valor definido por la aplicación asociado al elemento de lista especificado en un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_GETITEMDATA explícitamente. |
ComboBox_GetItemHeight | Recupera el alto de los elementos de lista en un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_GETITEMHEIGHT explícitamente. |
ComboBox_GetLBText | Obtiene una cadena de una lista en un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_GETLBTEXT explícitamente. |
ComboBox_GetLBTextLen | Obtiene la longitud de una cadena de la lista en un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_GETLBTEXTLEN explícitamente. |
ComboBox_GetMinVisible | Obtiene el número mínimo de elementos visibles en la lista desplegable de un cuadro combinado. |
ComboBox_GetText | Recupera el texto de un control de cuadro combinado. |
ComboBox_GetTextLength | Obtiene el número de caracteres del texto de un cuadro combinado. |
ComboBox_InsertItemData | Inserta datos de elementos en una lista en un cuadro combinado en la ubicación especificada. Puede usar esta macro o enviar el mensaje de CB_INSERTSTRING explícitamente. |
ComboBox_InsertString | Agrega una cadena a una lista de un cuadro combinado en la ubicación especificada. Puede usar esta macro o enviar el mensaje de CB_INSERTSTRING explícitamente. |
ComboBox_LimitText | Limita la longitud del texto que el usuario puede escribir en el control de edición de un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_LIMITTEXT explícitamente. |
ComboBox_ResetContent | Quita todos los elementos del cuadro de lista y el control de edición de un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_RESETCONTENT explícitamente. |
ComboBox_SelectItemData | Busca una lista en un cuadro combinado para un elemento que tenga los datos de elementos especificados. Si se encuentra un elemento coincidente, se selecciona el elemento. Puede usar esta macro o enviar el mensaje CB_SELECTSTRING explícitamente. |
ComboBox_SelectString | Busca una lista en un cuadro combinado para un elemento que comienza con los caracteres de una cadena especificada. Si se encuentra un elemento coincidente, se selecciona el elemento. Puede usar esta macro o enviar el mensaje CB_SELECTSTRING explícitamente. |
ComboBox_SetCueBannerText | Establece el texto del banner de indicación que se muestra para el control de edición de un cuadro combinado. |
ComboBox_SetCurSel | Establece el elemento seleccionado actualmente en un cuadro combinado. Puede usar esta macro o enviar el mensaje de CB_SETCURSEL explícitamente. |
ComboBox_SetExtendedUI | Selecciona la interfaz de usuario (UI) predeterminada o la interfaz de usuario extendida para un cuadro combinado que tiene el estilo CBS_DROPDOWN o CBS_DROPDOWNLIST. Puede usar esta macro o enviar explícitamente el mensaje de CB_SETEXTENDEDUI. |
ComboBox_SetItemData | Establece el valor definido por la aplicación asociado al elemento de lista especificado en un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_SETITEMDATA explícitamente. |
ComboBox_SetItemHeight | Establece el alto de los elementos de lista o el campo de selección en un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_SETITEMHEIGHT explícitamente. |
ComboBox_SetMinVisible | Establece el número mínimo de elementos visibles en la lista desplegable de un cuadro combinado. |
ComboBox_SetText | Establece el texto de un cuadro combinado. |
ComboBox_ShowDropdown | Muestra u oculta la lista en un cuadro combinado. Puede usar esta macro o enviar el mensaje CB_SHOWDROPDOWN explícitamente. |
Mensajes
Tema | Contenido |
---|---|
CB_ADDSTRING | Agrega una cadena al cuadro de lista de un cuadro combinado. Si el cuadro combinado no tiene el estilo CBS_SORT, la cadena se agrega al final de la lista. De lo contrario, la cadena se inserta en la lista y la lista se ordena. |
CB_DELETESTRING | Elimina una cadena en el cuadro de lista de un cuadro combinado. |
CB_DIR | Agrega nombres a la lista mostrada por el cuadro combinado. El mensaje agrega los nombres de directorios y archivos que coinciden con una cadena especificada y un conjunto de atributos de archivo.
CB_DIR también puede agregar letras de unidad asignadas a la lista. |
CB_FINDSTRING | Busca en el cuadro de lista de un cuadro combinado un elemento a partir de los caracteres de una cadena especificada. |
CB_FINDSTRINGEXACT | Busca la primera cadena de cuadro de lista en un cuadro combinado que coincide con la cadena especificada en el parámetro lParam. |
CB_GETCOMBOBOXINFO | Obtiene información sobre el cuadro combinado especificado. |
CB_GETCOUNT | Obtiene el número de elementos del cuadro de lista de un cuadro combinado. |
CB_GETCUEBANNER | Obtiene el texto del banner de indicación que se muestra en el control de edición de un cuadro combinado. Envíe este mensaje explícitamente o mediante la macro ComboBox_GetCueBannerText. |
CB_GETCURSEL | Una aplicación envía un mensaje de CB_GETCURSEL para recuperar el índice del elemento seleccionado actualmente, si existe, en el cuadro de lista de un cuadro combinado. |
CB_GETDROPPEDCONTROLRECT | Una aplicación envía un mensaje CB_GETDROPPEDCONTROLRECT para recuperar las coordenadas de pantalla de un cuadro combinado en su estado desplegable. |
CB_GETDROPPEDSTATE | Determina si se coloca el cuadro de lista de un cuadro combinado. |
CB_GETDROPPEDWIDTH | Obtiene el ancho mínimo permitido, en píxeles, del cuadro de lista de un cuadro combinado con el estilo CBS_DROPDOWN o CBS_DROPDOWNLIST. |
CB_GETEDITSEL | Obtiene las posiciones de carácter inicial y final de la selección actual en el control de edición de un cuadro combinado. |
CB_GETEXTENDEDUI | Determina si un cuadro combinado tiene la interfaz de usuario predeterminada o la interfaz de usuario extendida. |
CB_GETHORIZONTALEXTENT | Obtiene el ancho, en píxeles, que el cuadro de lista se puede desplazar horizontalmente (el ancho desplazable). Esto solo es aplicable si el cuadro de lista tiene una barra de desplazamiento horizontal. |
CB_GETITEMDATA | Una aplicación envía un mensaje CB_GETITEMDATA a un cuadro combinado para recuperar el valor proporcionado por la aplicación asociado al elemento especificado en el cuadro combinado. |
CB_GETITEMHEIGHT | Determina el alto de los elementos de lista o el campo de selección en un cuadro combinado. |
CB_GETLBTEXT | Obtiene una cadena de la lista de un cuadro combinado. |
CB_GETLBTEXTLEN | Obtiene la longitud, en caracteres, de una cadena de la lista de un cuadro combinado. |
CB_GETLOCALE | Obtiene la configuración regional actual del cuadro combinado. La configuración regional se usa para determinar el orden correcto de texto mostrado para cuadros combinados con el estilo CBS_SORT y el texto agregados mediante el mensaje CB_ADDSTRING. |
CB_GETMINVISIBLE | Obtiene el número mínimo de elementos visibles en la lista desplegable de un cuadro combinado. |
CB_GETTOPINDEX | Una aplicación envía el mensaje CB_GETTOPINDEX para recuperar el índice de base cero del primer elemento visible en la parte del cuadro de lista de un cuadro combinado. Inicialmente, el elemento con índice 0 está en la parte superior del cuadro de lista, pero si se ha desplazado el contenido del cuadro de lista, otro elemento puede estar en la parte superior. |
CB_INITSTORAGE | Una aplicación envía el mensaje CB_INITSTORAGE antes de agregar un gran número de elementos a la parte del cuadro de lista de un cuadro combinado. Este mensaje asigna memoria para almacenar elementos de cuadro de lista. |
CB_INSERTSTRING | Inserta una cadena o datos de elemento en la lista de un cuadro combinado. A diferencia del mensaje CB_ADDSTRING, el mensaje de CB_INSERTSTRING no hace que se ordene una lista con el estilo CBS_SORT. |
CB_LIMITTEXT | Limita la longitud del texto que el usuario puede escribir en el control de edición de un cuadro combinado. |
CB_RESETCONTENT | Quita todos los elementos del cuadro de lista y el control de edición de un cuadro combinado. |
CB_SELECTSTRING | Busca en la lista de un cuadro combinado un elemento que comienza con los caracteres de una cadena especificada. Si se encuentra un elemento coincidente, se selecciona y se copia en el control de edición. |
CB_SETCUEBANNER | Establece el texto del banner de indicación que se muestra para el control de edición de un cuadro combinado. |
CB_SETCURSEL | Una aplicación envía un mensaje CB_SETCURSEL para seleccionar una cadena en la lista de un cuadro combinado. Si es necesario, la lista desplaza la cadena a la vista. El texto del control de edición del cuadro combinado cambia para reflejar la nueva selección y se quita cualquier selección anterior de la lista. |
CB_SETDROPPEDWIDTH | Una aplicación envía el mensaje CB_SETDROPPEDWIDTH para establecer el ancho máximo permitido, en píxeles, del cuadro de lista de un cuadro combinado con el estilo CBS_DROPDOWN o CBS_DROPDOWNLIST. |
CB_SETEDITSEL | Una aplicación envía un mensaje CB_SETEDITSEL para seleccionar caracteres en el control de edición de un cuadro combinado. |
CB_SETEXTENDEDUI | Una aplicación envía un mensaje de CB_SETEXTENDEDUI para seleccionar la interfaz de usuario predeterminada o la interfaz de usuario extendida para un cuadro combinado que tenga el estilo CBS_DROPDOWN o CBS_DROPDOWNLIST. |
CB_SETHORIZONTALEXTENT | Una aplicación envía el mensaje CB_SETHORIZONTALEXTENT para establecer el ancho, en píxeles, por el que un cuadro de lista se puede desplazar horizontalmente (el ancho desplazable). Si el ancho del cuadro de lista es menor que este valor, la barra de desplazamiento horizontal desplaza horizontalmente los elementos del cuadro de lista. Si el ancho del cuadro de lista es igual o mayor que este valor, la barra de desplazamiento horizontal está oculta o, si el cuadro combinado tiene el estilo CBS_DISABLENOSCROLL, deshabilitado. |
CB_SETITEMDATA | Una aplicación envía un mensaje de CB_SETITEMDATA para establecer el valor asociado al elemento especificado en un cuadro combinado. |
CB_SETITEMHEIGHT | Una aplicación envía un mensaje CB_SETITEMHEIGHT para establecer el alto de los elementos de lista o el campo de selección en un cuadro combinado. |
CB_SETLOCALE | Una aplicación envía un mensaje CB_SETLOCALE para establecer la configuración regional actual del cuadro combinado. Si el cuadro combinado tiene el estilo CBS_SORT y las cadenas se agregan mediante CB_ADDSTRING, la configuración regional de un cuadro combinado afecta a cómo se ordenan los elementos de lista. |
CB_SETMINVISIBLE | Una aplicación envía un mensaje de CB_SETMINVISIBLE para establecer el número mínimo de elementos visibles en la lista desplegable de un cuadro combinado. |
CB_SETTOPINDEX | Una aplicación envía el mensaje CB_SETTOPINDEX para asegurarse de que un elemento determinado está visible en el cuadro de lista de un cuadro combinado. El sistema desplaza el contenido del cuadro de lista para que el elemento especificado aparezca en la parte superior del cuadro de lista o se haya alcanzado el intervalo de desplazamiento máximo. |
CB_SHOWDROPDOWN | Una aplicación envía un mensaje de CB_SHOWDROPDOWN para mostrar u ocultar el cuadro de lista de un cuadro combinado que tiene el estilo CBS_DROPDOWN o CBS_DROPDOWNLIST. |
Notificaciones
Tema | Contenido |
---|---|
CBN_CLOSEUP | El CBN_CLOSEUP código de notificación se envía cuando se ha cerrado el cuadro de lista de un cuadro combinado. La ventana primaria del cuadro combinado recibe este código de notificación a través del mensaje WM_COMMAND. |
CBN_DBLCLK | El CBN_DBLCLK código de notificación se envía cuando el usuario hace doble clic en una cadena en el cuadro de lista de un cuadro combinado. La ventana primaria del cuadro combinado recibe este código de notificación a través del mensaje WM_COMMAND. |
CBN_DROPDOWN | El código de notificación CBN_DROPDOWN se envía cuando el cuadro de lista de un cuadro combinado está a punto de hacerse visible. La ventana primaria del cuadro combinado recibe este código de notificación a través del mensaje WM_COMMAND. |
CBN_EDITCHANGE | El código de notificación CBN_EDITCHANGE se envía después de que el usuario haya realizado una acción que pueda haber modificado el texto en la parte del control de edición de un cuadro combinado. A diferencia del código de notificación de CBN_EDITUPDATE, este código de notificación se envía después de que el sistema actualice la pantalla. La ventana primaria del cuadro combinado recibe este código de notificación a través del mensaje WM_COMMAND. |
CBN_EDITUPDATE | El código de notificación CBN_EDITUPDATE se envía cuando la parte del control de edición de un cuadro combinado está a punto de mostrar texto modificado. Este código de notificación se envía después de que el control haya formateado el texto, pero antes de que muestre el texto. La ventana primaria del cuadro combinado recibe este código de notificación a través del mensaje WM_COMMAND. |
CBN_ERRSPACE | El código de notificación CBN_ERRSPACE se envía cuando un cuadro combinado no puede asignar memoria suficiente para satisfacer una solicitud específica. La ventana primaria del cuadro combinado recibe este código de notificación a través del mensaje WM_COMMAND. |
CBN_KILLFOCUS | El código de notificación CBN_KILLFOCUS se envía cuando un cuadro combinado pierde el foco del teclado. La ventana primaria del cuadro combinado recibe este código de notificación a través del mensaje WM_COMMAND. |
CBN_SELCHANGE | El CBN_SELCHANGE código de notificación se envía cuando el usuario cambia la selección actual en el cuadro de lista de un cuadro combinado. El usuario puede cambiar la selección haciendo clic en el cuadro de lista o mediante las teclas de dirección. La ventana primaria del cuadro combinado recibe esta notificación en forma de un mensaje de WM_COMMAND con CBN_SELCHANGE en la palabra de orden superior del parámetro wParam. |
CBN_SELENDCANCEL | El código de notificación CBN_SELENDCANCEL se envía cuando el usuario selecciona un elemento, pero luego selecciona otro control o cierra el cuadro de diálogo. Indica que se omitirá la selección inicial del usuario. La ventana primaria del cuadro combinado recibe este código de notificación a través del mensaje WM_COMMAND. |
CBN_SELENDOK | El código de notificación CBN_SELENDOK se envía cuando el usuario selecciona un elemento de lista o selecciona un elemento y, a continuación, cierra la lista. Indica que se va a procesar la selección del usuario. La ventana primaria del cuadro combinado recibe este código de notificación a través del mensaje WM_COMMAND. |
CBN_SETFOCUS | El CBN_SETFOCUS código de notificación se envía cuando un cuadro combinado recibe el foco del teclado. La ventana primaria del cuadro combinado recibe este código de notificación a través del mensaje WM_COMMAND. |
WM_COMPAREITEM | El sistema envía el mensaje WM_COMPAREITEM para determinar la posición relativa de un nuevo elemento en la lista ordenada de un cuadro combinado dibujado por el propietario o un cuadro de lista. Cada vez que la aplicación agrega un nuevo elemento, el sistema envía este mensaje al propietario de un cuadro combinado o cuadro de lista creado con el estilo CBS_SORT o LBS_SORT. |
WM_DRAWITEM | El WM_DRAWITEM mensaje se envía a la ventana primaria de un botón dibujado por el propietario, un cuadro combinado, un cuadro de lista o un menú cuando ha cambiado un aspecto visual del botón, cuadro combinado, cuadro de lista o menú. |
WM_MEASUREITEM | El mensaje WM_MEASUREITEM se envía a la ventana de propietario de un cuadro combinado, un cuadro de lista, un control de vista de lista o un elemento de menú cuando se crea el control o menú. |
Estructuras
Tema | Contenido |
---|---|
COMBOBOXINFO | Contiene información de estado del cuadro combinado. |
COMPAREITEMSTRUCT | Proporciona los identificadores y los datos proporcionados por la aplicación para dos elementos en un cuadro de lista ordenado, dibujado por el propietario o un cuadro combinado. |
DRAWITEMSTRUCT | Proporciona información necesaria a la ventana del propietario para determinar cómo pintar un control dibujado por el propietario o un elemento de menú. La ventana propietario del elemento de menú o control dibujado por el propietario recibe un puntero a esta estructura como el parámetro lParam del mensaje de WM_DRAWITEM. |
MEASUREITEMSTRUCT | Informa al sistema de las dimensiones de un control o elemento de menú dibujado por el propietario. Esto permite al sistema procesar la interacción del usuario con el control correctamente. |
Constantes
Tema | Contenido |
---|---|
estilos de cuadro combinado de | Para crear un cuadro combinado con el CreateWindow o función CreateWindowEx, especifique la clase COMBOBOX, las constantes de estilo de ventana adecuadas y una combinación de los siguientes estilos de cuadro combinado. |