Página 1 de 1
El orden... ¿importa?
Publicado: Jue Nov 24, 2005 11:33 am
por joseluis
Hola,
Quisiera saber si el comportamiento es así a propósito o no.
En un combobox hago lo siguiente:
::oCombo:aItems := aItems
::oCombo:cText := cText
El resultado es que muestra cText.
Sin embargo, si hago:
::oCombo:cText := cText
::oCombo:aItems := aItems
El resultado es que muestra aItems[1]
¿Es el comportamiento deseado?
Os dejo un ejemplo.
Saludos,
José Luis Capel
--
El orden... ¿importa?
Publicado: Jue Nov 24, 2005 11:41 am
por jfgimenez
José Luis,
> ¿Es el comportamiento deseado?
Sí, es correcto. Piensa que si asignas cText antes de aItems, el control no
tiene todavía ningún item que corresponda a ese cText.
En cambio, haciendolo al revés sí. Teniendo ya los items, al asignar cText,
el control busca en los items ese texto, y lo selecciona.
--
Un saludo,
José F. Giménez
El orden... ¿importa?
Publicado: Jue Nov 24, 2005 11:42 am
por Xevi
José Luis,
Yo siempre lo que hago es cargar el Array del Combo, y luego establecer el
índice o el Texto deseado.
Supongo que el orden SI tiene importacia, precisamente, porque de no existir
el Indice o el Texto en el Array ¿Donde debe situarse la posición nIndex del
Combo???
Un Saludo,
Xevi.
"José Luis Capel" <
joseluis@iaicom.com> escribió en el mensaje
news:[email=
438597d1@ozsrvnegro.ozlan.local...]
438597d1@ozsrvnegro.ozlan.local...[/email]
> Hola,
>
> Quisiera saber si el comportamiento es así a propósito o no.
>
> En un combobox hago lo siguiente:
>
> ::oCombo:aItems := aItems
> ::oCombo:cText := cText
>
> El resultado es que muestra cText.
>
> Sin embargo, si hago:
>
> ::oCombo:cText := cText
> ::oCombo:aItems := aItems
>
> El resultado es que muestra aItems[1]
>
> ¿Es el comportamiento deseado?
>
> Os dejo un ejemplo.
>
> Saludos,
> José Luis Capel
>
>
El orden... ¿importa?
Publicado: Jue Nov 24, 2005 11:42 am
por joseluis
José,
Gracias por la aclaración...
>
> Sí, es correcto. Piensa que si asignas cText antes de aItems, el control no
> tiene todavía ningún item que corresponda a ese cText.
>
> En cambio, haciendolo al revés sí. Teniendo ya los items, al asignar cText,
> el control busca en los items ese texto, y lo selecciona.
>
¿Tambien es válido para un combo tipo csDROPDOWN? (El ejemplo que he
puesto es con un csDROPDOWNLIST) En este último caso, no lo tengo muy
claro que sea así...
Saludos y gracias,
José Luis Capel
El orden... ¿importa?
Publicado: Jue Nov 24, 2005 11:55 am
por joseluis
José,
>
>>¿Tambien es válido para un combo tipo csDROPDOWN? (El ejemplo que he
>>puesto es con un csDROPDOWNLIST) En este último caso, no lo tengo muy
>>claro que sea así...
>
>
> En el caso de csDROPDOWN se podría haber hecho para que al asignar aItems
> respete lo que tuviera cText, pero no ha sido así. La razón está en que
> también hay que actualizar nIndex, y en el mismo momento en que es
> actualizado se cambia el texto.
>
> De haberlo hecho de la otra forma, además de haber sido mucho más complejo,
> seguro que hubiera habido otros comportamientos no deseados. En cambio, tal
> y como está ahora funciona bien, y lo que has comentado se soluciona
> simplemente asignando primero los items, que además es lo más lógico.
>
Perfecto. Gracias por las aclaraciones!
Saludos,
José Luis Capel
El orden... ¿importa?
Publicado: Jue Nov 24, 2005 11:56 am
por jfgimenez
José Luis,
> ¿Tambien es válido para un combo tipo csDROPDOWN? (El ejemplo que he
> puesto es con un csDROPDOWNLIST) En este último caso, no lo tengo muy
> claro que sea así...
En el caso de csDROPDOWN se podría haber hecho para que al asignar aItems
respete lo que tuviera cText, pero no ha sido así. La razón está en que
también hay que actualizar nIndex, y en el mismo momento en que es
actualizado se cambia el texto.
De haberlo hecho de la otra forma, además de haber sido mucho más complejo,
seguro que hubiera habido otros comportamientos no deseados. En cambio, tal
y como está ahora funciona bien, y lo que has comentado se soluciona
simplemente asignando primero los items, que además es lo más lógico.
--
Un saludo,
José F. Giménez