Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   ComboBox ítem que está seleccionado (https://www.clubdelphi.com/foros/showthread.php?t=37843)

belen 24-11-2006 00:07:34

ComboBox ítem que está seleccionado
 
Hola, busqué sobre este tema en el foro y no lo encontré :(

Cargo desde una base de datos un ComboBox, lo que quiero saber es qué contiene el ítem que luego el usuario selecciona.

Es decir, si por ejemplo los elemento son:

Cita:

itemindex elemento
0..................123
1..................458
2.................. 214
3..................60111

Si ComboBox1.ItemIndex=1 entonces quiero poder pasarle a una variable el valor '458'.

Cabe aclarar que la lista de elemento cambia contianuamente y no hay forma de determinar la cantidad de elementos que ésta posee.

No quiero usar los elementos de bases de datos, como el DBcomboBox

Pensé en hacer un array para guardar el itemindex asociado al elemento y el elemento, pero seguro que hay algo más práctico.

Desde ya muchas gracias a los que se tomen el tiempo siquiera de leer mi pregunta, saludos.

seoane 24-11-2006 00:10:56

:confused:

Código Delphi [-]
  Variable:= ComboBox1.Items[ComboBox1.ItemIndex];

belen 24-11-2006 00:14:29

:o
 
:eek:
jajaj ya me fijo !

muuuuuuuuuuuuuuuuuuuuuuuchas gracias Seoane !!:o

Más rápido que los bomberos !


Qué tonta ! :D

jams73 02-09-2016 22:18:53

Duda
 
Y si fuera al contrario?, asignarle un valor al combobox de una variable??

roman 02-09-2016 22:24:05

:confused:

Código Delphi [-]
   ComboBox1.Items[ComboBox1.ItemIndex]:= Variable;

LineComment Saludos

jams73 03-09-2016 00:04:29

No me explique bien
 
Creo que no me explique bien, imagina que en el combobox tiene los item:
100
101
102
103
105
110
etc...

ese valor no esta visible porque no se a seleccionado nada, el combobox.text esta en blanco....como le harias para hacer que el valor visible del combobox fuera por ejemplo 105?

con el ejemplo que pasaste manda un error de "List index out of bounds (-1)"

dec 03-09-2016 00:47:03

Hola,

Hay algo que se me escapa: un "ComboBox" no muestra una lista de valores, es decir, no podemos seleccionar un elemento de la misma forma en que podemos hacerlo en un "ListBox". Ahora bien, el "valor visible" de un ComboBox se determina mediante la propiedad "ItemIndex", y, si no partimos de un índice, sino de un valor, podemos usar el método "IndexOf" de la propiedad "Items" del ComboBox. Es decir:

Suponiendo un ComboBox con los siguientes elementos:

Código:

100
101
102
103
105

Para seleccionar el elemento "103", por ejemplo, podemos partir de su índice:

Código Delphi [-]
ComboBox.ItemIndex := 3;

O, más comúnmente, buscaremos antes el índice del elemento que nos interesa:

Código Delphi [-]
If ComboBox.Items.IndexOf('103') <> -1 then
  ComboBox.ItemIndex := ComboBox.Items.IndexOf('103');

Si la propiedad "Style" del "ComboBox" es "csDropDown", entonces también podremos usar la propiedad "Text" tal que así:

Código Delphi [-]
ComboBox.Text := '110';

Esto último tiene la posible ventaja de que el elemento "110" no tiene porqué estar en el ComboBox previamente.

Espero que esto pueda resultarte útil. :)

jams73 05-09-2016 19:44:11

Es correcto, buenas opciones, gracias!!!


La franja horaria es GMT +2. Ahora son las 15:21:25.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi