Combo en visual basic

Hola:he puesto un combo alumnos en un formulario, y asociado al evento click del combo una consulta para que me cargue un recordset con las actividades del alumno . El recorset lo carga correctamente,(solo me muevo por los registros que en los que aparece ese alumno). El problemas es que me acaba cambiando la identidad(en la base de datos) del alumno en actividades, y si en un principio un alumno 1 estaba en la actividad 1, al pinchar en otro alumno, me asigna ese alumno a la actividad 1.
¿Eso se debe a algún problema en el código o a alguna propiedad del combo?
No se si lo habré explicado bien.
Gracias.

1 respuesta

Respuesta
1
Necesito un poco más de detalles porque no me queda muy clara tu pregunta, el combo lo tienes que manipular tu manuamente, o sea que lo rellenas, ¿ya probaste el dbcombo que te hace el manejo automático?, ahora bien tu tienes tu combo al darle click supongo que lo que quieres es que te aparezcan los datos de ese alumno, ¿estoy en lo correcto?, cuando tu asocias los text, tal vez lo que debas de hacer es poner tu recordset como de solo lectura readonly=true, y cuando des aceptar o regresar readonly=false y tal vez hacer un update, no me queda muy claro que es lo que quieres.
El combo lo relleno a partir de una tabla de access, y al hacer click me sale el nombre de un alumno.
En el mismo formulario tengo un data para moverme por los registros de otra tabla de access (la tabla actividades)
El data inicialmente lo tengo cargado con las actividades.
Lo que quería lograr al hacer click en al combo, es que el recordset se cargara solo con las actividades que tiene el alumno que he seleccionado en el combo.Lo he hecho mediante una consulta sql en el evento click.
El recordset se carga correctamente solo con las actividades del alumno que he seleccionado, pero si sigo pinchando en más alumnos del combo(q no tienen actividades asociadas) me cambia el campo alumno en la tabla de access actividades.
Si en un principio tengo 3 actividades, y asociadas a ellas los alumnos 1,2 y 3.Cuando seleccione a estos en el combo, el recordset se cargara bien, pero cuando seleccione más nombres del combo q no tengan actividades, me encontrare, por ejemplo, q las 3 actividades ahora están asociadas a los alumnos 5, 7 y 9. Y estos nuevos datos se me graban en la tabla de access. Sobre estas tablas también hago altas y modificaciones así q no me valdría q sea solo de lectura.
Espero haberte aclarado un poco el problema, y perdona por el rollo. Ante todo muchas gracias por tu tiempo.
Un saludo.
Ok, ya entendí mejor, mira algo así me sucedió alguna vez, y era porque estaba usando combobox, se soluciono mi problema utilizando dbcombo, intentalo, si no te funciona, no te preocupes, escríbeme, eso lo solucionamos rapido, me queda la duda en el data del recordset supongo que tienes un id o llave para alumnos, esa llave la tienes direccionada a algún campo del formulario, ¿por qué esa es la que te cambia automáticamente verdad?, checate con el dbcombo o checate ese campo a donde esta direccionado.
En la tabla de access cada alumno tiene su id que es un numero.Ese valor aparte de tenerlo en el itemdata de cada alumno lo saco en un textbox, y es el valor que me cambia en el recordset.
No se lo que es un dbcombo ni me aparece en la barra de herramientas.
¿DE usar un dbcombo usaría el mismo código para rellenarlo y al hacer click? Me pasaron un cd con el visual y no tiene las ayudas.
Hasta mañana no puedo mirarlo, así que ya t diré que ha pasado XD.
Gracias otra vez.Un saludo.
Con el dbcombo no se necesita nada de código para rellenarlo, solo necesitarías un data direccionado a la tabla en este caso alumnos, y el rowsource del combo con ese data, y el listfield con el campo, y eso es todo, para que saques el dbcombo debes de agregarlo esto lo haces dando click en proyecto -- componentes y seleccionas Microdof data BoundList Controls 6.0, esta bien sencillo de utilizar, checa si lo puedes utilizar

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas