Combo
Cabecera
#include <gui/combo.h>
Funciones
Combo* | combo_create (void) |
void | combo_OnFilter (...) |
void | combo_OnChange (...) |
void | combo_OnFocus (...) |
void | combo_OnSelect (...) |
void | combo_min_width (...) |
void | combo_text (...) |
void | combo_align (...) |
void | combo_passmode (...) |
void | combo_editable (...) |
void | combo_autoselect (...) |
void | combo_select (...) |
void | combo_tooltip (...) |
void | combo_color (...) |
void | combo_color_focus (...) |
void | combo_bgcolor (...) |
void | combo_bgcolor_focus (...) |
void | combo_phtext (...) |
void | combo_phcolor (...) |
void | combo_phstyle (...) |
void | combo_copy (...) |
void | combo_cut (...) |
void | combo_paste (...) |
void | combo_add_elem (...) |
void | combo_set_elem (...) |
void | combo_ins_elem (...) |
void | combo_del_elem (...) |
void | combo_clear (...) |
uint32_t | combo_count (...) |
void | combo_list_height (...) |
void | combo_selected (...) |
uint32_t | combo_get_selected (...) |
const char_t* | combo_get_text (...) |
Los ComboBox son cajas de edición de texto con lista desplegable (Figura 1). Por tanto, combinan la funcionalidad de los controles Edit y PopUp. En ¡Hola PopUp y Combo! tienes un ejemplo de uso.
- Utiliza combo_create parar crear un combo.
- Utiliza combo_text para establecer el texto de edición.
- Utiliza combo_color para establecer el color del texto.
- Utiliza combo_bgcolor para establecer el color del fondo.
- Utiliza combo_add_elem para añadir un elemento a la lista.

combo_create ()
Crea un control combo.
Combo* combo_create(void);
Retorna
El combo.
combo_OnFilter ()
Establece un manejador para filtrar el texto mientras se edita.
void combo_OnFilter(Combo *combo, Listener *listener);
combo | El combo. |
listener | Función callback que se llamará tras cada pulsación de tecla. En EvTextFilter de event_result se devolverá el texto filtrado. |
Observaciones
Ver Filtrar textos y Eventos GUI.
combo_OnChange ()
Establece un manejador para detectar cuando el texto ha cambiado.
void combo_OnChange(Combo *combo, Listener *listener);
combo | El combo. |
listener | Función callback que se llamará cuando el control pierda el foco del teclado, lo que indicará el final de la edición. |
Observaciones
Ver Validar textos y Eventos GUI.
combo_OnFocus ()
Establece un manejador para el foco del teclado.
void combo_OnFocus(Combo *combo, Listener *listener);
combo | El combo. |
listener | Función callback que se llamará cuando se reciba o se pierda el foco del teclado. |
Observaciones
Ver Eventos GUI.
combo_OnSelect ()
Establece un manejador para la selección de un nuevo elemento.
void combo_OnSelect(Combo *combo, Listener *listener);
1 2 3 4 5 6 7 |
static void i_OnSelect(App *app, Event *e) { const EvButton *p = event_params(e, EvButton); do_something_onselect(app, p->index); } ... combo_OnSelect(combo, listener(app, i_OnSelect, App)); |
combo | El combo. |
listener | Función callback que se llamará tras seleccionar un nuevo elemento de la lista. |
Observaciones
Ver Eventos GUI.
combo_min_width ()
Establece el ancho mínimo del control.
void combo_min_width(Combo *combo, const real32_t width);
combo | El combo. |
width | El ancho mínimo. |
Observaciones
El ancho por defecto de un Combo será 100px. Ese valor puede ser modificado por esta función.
combo_text ()
Establece el texto del control de edición.
void combo_text(Combo *combo, const char_t *text);
combo | El combo. |
text | Cadena C UTF8 terminada en carácter nulo |
combo_align ()
Establece la alineación del texto.
void combo_align(Combo *combo, const align_t align);
combo | El combo. |
align | La alineación. |
combo_passmode ()
Activa el modo contraseña, que ocultará los caracteres tecleados.
void combo_passmode(Combo *combo, const bool_t passmode);
combo | El combo. |
passmode | Activa o desactiva el modo contraseña. |
combo_editable ()
Activa o desactiva la edición en el control.
void combo_editable(Combo *combo, const bool_t is_editable);
combo | El combo. |
is_editable |
|
combo_autoselect ()
Activa o desactiva la autoselección del texto.
void combo_autoselect(Combo *combo, const bool_t autoselect);
combo | El combo. |
autoselect |
|
Observaciones
Ver Selección del texto.
combo_select ()
Selecciona texto.
void combo_select(Combo *combo, const int32_t start, const int32_t end);
combo | El combo. |
start | Posición del carácter inicial. |
end | Posición del carácter final. |
Observaciones
Ver Selección del texto.
combo_tooltip ()
Asigna un tooltip al control combo.
void combo_tooltip(Combo *combo, const char_t *text);
combo | El combo. |
text | Cadena C UTF8 terminada en carácter nulo |
combo_color ()
Establece el color del texto.
void combo_color(Combo *combo, const color_t color);
combo | El combo. |
color | El color del texto. |
Observaciones
Los valores RGB puede que no sean del todo portables. Ver Colores.
combo_color_focus ()
Establece el color del texto, cuando el control tiene el foco del teclado.
void combo_color_focus(Combo *combo, const color_t color);
combo | El combo. |
color | El color del texto. |
Observaciones
Los valores RGB puede que no sean del todo portables. Ver Colores.
combo_bgcolor ()
Establece el color de fondo.
void combo_bgcolor(Combo *combo, const color_t color);
combo | El combo. |
color | El color de fondo. |
Observaciones
Los valores RGB puede que no sean del todo portables. Ver Colores.
combo_bgcolor_focus ()
Establece el color de fondo, cuando el control tiene el foco del teclado.
void combo_bgcolor_focus(Combo *combo, const color_t color);
combo | El combo. |
color | El color de fondo. |
Observaciones
Los valores RGB puede que no sean del todo portables. Ver Colores.
combo_phtext ()
Establece un texto explicativo para cuando el control está en blanco (placeholder).
void combo_phtext(Combo *combo, const char_t *text);
combo | El combo. |
text | Cadena C UTF8 terminada en carácter nulo |
combo_phcolor ()
Establece el color del texto placeholder.
void combo_phcolor(Combo *combo, const color_t color);
combo | El combo. |
color | El color del texto. |
Observaciones
Los valores RGB puede que no sean del todo portables. Ver Colores.
combo_phstyle ()
Establece el estilo de la fuente para el placeholder.
void combo_phstyle(Combo *combo, const uint32_t fstyle);
combo | El combo. |
fstyle | Combinación de valores de fstyle_t. |
combo_copy ()
Copia al portapapeles el texto seleccionado.
void combo_copy(const Combo *combo);
combo | El combo. |
Observaciones
Ver Operaciones con el portapapeles.
combo_cut ()
Corta el texto seleccionado, copiándolo al portapapeles.
void combo_cut(Combo *combo);
combo | El combo. |
Observaciones
Ver Operaciones con el portapapeles.
combo_paste ()
Pega el texto del portapapeles en la posición del caret.
void combo_paste(Combo *combo);
combo | El combo. |
Observaciones
Ver Operaciones con el portapapeles.
combo_add_elem ()
Añade un nuevo elemento a la lista desplegable.
void combo_add_elem(Combo *combo, const char_t *text, const Image *image);
combo | El combo. |
text | El texto del elemento en UTF-8 o el identificador del recurso. Recursos. |
image | Icono asociado al elemento o el identificador del recurso. Por cuestión de espacio, se escalará a un alto máximo de 16 píxeles. El control conservará una copia de la image. La imagen original debe ser destruida, a no ser que se obtuviese con image_from_resource. |
combo_set_elem ()
Edita un elemento de la lista desplegable.
void combo_set_elem(Combo *combo, const uint32_t index, const char_t *text, const Image *image);
combo | El combo. |
index | El índice del elemento a sustituir. |
text | El texto del elemento en UTF-8 o el identificador del recurso. Recursos. |
image | Icono asociado al elemento o el identificador del recurso. Por cuestión de espacio, se escalará a un alto máximo de 16 píxeles. |
combo_ins_elem ()
Inserta un elemento en la lista desplegable.
void combo_ins_elem(Combo *combo, const uint32_t index, const char_t *text, const Image *image);
combo | El combo. |
index | El índice del elemento a insertar. |
text | El texto del elemento en UTF-8 o el identificador del recurso. Recursos. |
image | Icono asociado al elemento o el identificador del recurso. Por cuestión de espacio, se escalará a un alto máximo de 16 píxeles. |
Observaciones
Funciona igual que combo_add_elem, pero insertando en una posición arbitraria, en lugar de al final de la lista.
combo_del_elem ()
Elimina un elemento de la lista desplegable.
void combo_del_elem(Combo *combo, const uint32_t index);
combo | El combo. |
index | El índice del elemento a eliminar. |
combo_clear ()
Elimina todos los elementos de la lista desplegable.
void combo_clear(Combo *combo);
combo | El combo. |
combo_count ()
Obtiene el número de elementos de la lista.
uint32_t combo_count(const Combo *combo);
combo | El combo. |
Retorna
El número de elementos.
combo_list_height ()
Establece el tamaño de la lista desplegable.
void combo_list_height(Combo *combo, const uint32_t elems);
combo | El combo. |
elems | Número de elementos visibles. Si el control tiene más, aparecerá una barra de scroll. |
combo_selected ()
Establece el elemento seleccionado del popup.
void combo_selected(Combo *combo, const uint32_t index);
combo | El combo. |
index | El elemento a seleccionar. Si pasamos |
combo_get_selected ()
Obtiene el elemento seleccionado del popup.
uint32_t combo_get_selected(const Combo *combo);
combo | El combo. |
Retorna
El elemento seleccionado.
combo_get_text ()
Obtiene el texto de un elemento del popup.
const char_t* combo_get_text(const Combo *combo, const uint32_t index);
combo | El combo. |
index | El índice del elemento. |
Retorna
El texto del elemento.