Página 1 de 1

DbCombobox

Publicado: Dom Ago 14, 2005 3:21 am
por fredy[1]
Hola,
Me podéis explicar el DbCombobox cuando está el nStyle := csDropDown ?
No sé si es que no funciona bien, o que lo estoy utilizando de forma incorrecta.
Fijaros en el ejemplo que mando.
El estilo csDropDown me permite escribir lo que yo quiera dentro del combo, no tiene por qué ser un dato de la lista aItems.
En cambio, cuando estoy recorriendo la tabla sólo me muestra aquellos datos que coinciden con un valor de aItems, el resto me los muestra en blando. Y si aItems está vací­o, todos los registros me muestran este campo vací­o, cuando realmente la dbf tiene datos en él. Simplemente no los muestra porque no encuentra ese valor dentro de aItems.
Dado que este control me deja introducir el texto que yo quiera, ¿No me tendrí­a que mostrar luego todos los valores y no solo los que concuerdan con aItems?
En el caso de csDropDownList, si que creo que tendrí­a que ser así­, dado que obligatoriamente tengo que seleccionar un valor de los que tiene aItems, pero con el csDrí²pDown creo que es más correcta mi interpretación. Tendrí­a que mostrar cualquier valor introducido, independientemente de que esté o no en aItems.
Un saludico,
Fredy
--

Attached files addnew.zip (2.3 KB)Â

DbCombobox

Publicado: Dom Ago 14, 2005 6:04 pm
por fredy[1]
Hola,
De momento lo he arreglado poniendo en el evento OnPostChange de la dbf:
METHOD DbfDataSet1PostChange( oSender, nOperation, Param1, Param2 ) CLASS
TForm1
IF ::oDbCombobox1 <> Nil
::oDbCombobox1:Reset()
::oDbCombobox1:AddItem( AllTrim( oSender:Nombre ) )
ENDIF
RETURN Nil
El IF está puesto porque al parecer se realiza una llamada al PostChange
antes de que estén creados el resto de los controles y si no pongo esta lí­nea
casca antes de mostrar el formulario.
Un saludico,
Fredy

DbCombobox

Publicado: Dom Ago 14, 2005 9:10 pm
por ignacio
Fredy,
Tienes razón, cuando el estilo es cbsdropdown (sin el list) no debería ser
tan 'tajante'. Lo arreglamos de para la próxima Pre-release. Gracias.
Un saludo,
"Fredy" <fredy@airtel.net> escribió en el mensaje
news:[email=a20b86f4f3e8c76e96634e30e4@news.xailer.com...]a20b86f4f3e8c76e96634e30e4@news.xailer.com...[/email]
Hola,
Me podéis explicar el DbCombobox cuando está el nStyle := csDropDown ?
No sé si es que no funciona bien, o que lo estoy utilizando de forma
incorrecta.
Fijaros en el ejemplo que mando.
El estilo csDropDown me permite escribir lo que yo quiera dentro del combo,
no tiene por qué ser un dato de la lista aItems.
En cambio, cuando estoy recorriendo la tabla sólo me muestra aquellos datos
que coinciden con un valor de aItems, el resto me los muestra en blando. Y
si aItems está vacío, todos los registros me muestran este campo vacío,
cuando realmente la dbf tiene datos en él. Simplemente no los muestra porque
no encuentra ese valor dentro de aItems.
Dado que este control me deja introducir el texto que yo quiera, ¿No me
tendría que mostrar luego todos los valores y no solo los que concuerdan con
aItems?
En el caso de csDropDownList, si que creo que tendría que ser así, dado que
obligatoriamente tengo que seleccionar un valor de los que tiene aItems,
pero con el csDròpDown creo que es más correcta mi interpretación. Tendría
que mostrar cualquier valor introducido, independientemente de que esté o no
en aItems.
Un saludico,
Fredy