Agregar daatos de tabla a combo vfp 6.0

Soy nuevo en fox pro 6.0
Quisiera saber como puedo agregar a un combo los datos de una tabla de la siguiente maner
tengo una tabla, en la tabla manejor los campos de nombre y edad
quiero agregar dos comco a un formulario y que en el primer combo me despliegue los datos de la edad guardados en la tabla y al seleccionar la edad en ese combo
en el segundo combo me muestre los datos de los nombres que tienen esa edad

1 Respuesta

Respuesta
1
Usuario arturorodrig! Eso es fácil! Va así:
Trabajemos en base a tu ejemplo. Imagina que tienes una tabla llamada "personas". Y los campos "edad" y "nombre". Bien. Vamos al asunto:
1. Crea dos combos en tu form: combo1 (sera para las edades) y combo 2 (sera para los nombres).
2. En el combo1, ve a la ventana de propiedades, en la ficha DATA (datos) busca la propiedad ROWSOURCETYPE y escoge el valor "6 - Fields (campo)" [yo tengo mi fox en ingles... por eso lo pongo en ingles y espanol]! Luego en la propiedad ROWSOURCE que esta allí mismo, escoge, de la lista desplegable, el campo "edad"!
3. En el Combo2, igualmente, ve a las propiedades, en la ficha DATA (datos) establece la propiedad ROWSOURCETYPE en valor 6 - Fields y como ROWSOURCE escoge el campo "nombre".
Hasta aquí, has vinculado los combos a los campos respectivos "edad" y "nombre". Si pruebas y ejecutas, podrás desplegar desde tu form, los registros almacenados en la tabla a través de los combos! Ahora bien... para que al seleccionar la edad del combo1, "automaticamente" te muestre el nombre al que corresponde esa edad en el combo2, debes hacer esto:
4. Ve al INTERACTIVECHANGE del combo1 y escribí:
THISFORM.Combo2.Value = personas.nombre     &&mostramos nombre en combo2&&
Con esto, al cambiar el valor del combo1 (edad), el combo 2 mostrara el nombre asociado a esa edad! Ahora... para muestra un botón... si quieres hacer lo contrario.. es decir, que al seleccionar el nombre en el combo2, te muestre la edad en el combo1, pone esto en el INTERACTIVECHANGE del combo2:
THISFORM.Combo1.Value = personas.edad      &&Mostramos edad en combo1&&
Y listo! Ahora ya puedes escoger del combo que quieras! Es cosa de gusto ahora :D :D :D
¿Es lo que buscas? Proba y me avisas! Si te funciona, pues fue un gusto ayudarte! Si no te funciona, avisame y vemos como solucionar el problema!
Un placer!
Saludos!
A tus ordenes!
Ravenn!! :D :D :D
Muy buenatu respuesta pero tengo otra duda
quisiera que por ejemplo si hay varios con la edad de 23
en el combo en la lista desplegable solo me muestre los que tienen la edad 23 y no todos
muchas gracias por tu tiempo :-D
Eso es fácil. Si quieres que el combo te muestre valores específicos, puedes utilizar un tercer combobox a la par del combo1 (edades), para cargar todas las edades. Así podrás seleccionar en un combo (combo3) la edad a buscar, y el combo1 te mostrara solo los registros de esas edades! Va asi: 
1. Crea un Combo3 a la par del combo1.
2. Ve la evento InteractiveChange del Combo3 y escribí esto:
Public edad
edad = VAL(THISFORM.Combo3.Value)
SET FILTER TO personas.Edad = edad
THISFORM. Refresh
3. Ahora solo tienes que ir al combo 3 y cargalo con todas las edades. 1,2,3,4,5...! Para esto, ve a las propiedades del combo3, escoge la pestaña datos y en ROWSOURCETYPE escoge value, y en Rowsource, escribí las edades (1,2,3,4,5,6,7,8,9,10,11,12...). O bien, podes crear una tabala, con un campo edades, lo llenas con las edades y lo enlazas a tu combo3! A como tu quieras! :D :D :D
Y listo! Así, cuando querrás hacer una búsqueda de edades en el combo "edades" a partir de un valor, solo lo escoges del combo 3 y listo! Sin más complicaciones! Pruébalo y me avisas! :D :D :D
A tus ordenes!
Ravenn! (n.n)!!!
muchas graxias ravenn x tu aclaracion me sirvio muchisimo eres muy bueno y me gustaria musho q pudieras resolver mi otra pregunta
muchas  graxias
Usuario arturorodrig! Me alegra mucho haberte ayudado! Cualquier consulta, no dudes en hacerla, que para eso estamos.. en la medida de lo posible! Finaliza esta consulta y puntúa, y procede a realizar la otra consulta!
Gracias por consultar!
A tus ordenes!
Ravenn!! :D :D :D

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas