Hola.
Por favor preciso su ayuda.
Tengo la siguiente AdoQuery como MasterSource(Qinscripcion); AdoTable (Tmateria).
Tengo Dos Dbgrid: DBgI relacionado con el DataSource del Qinscripcion y el otro DbgM relacionado con el DataSource de Tmateria.
Estos DBGrids se encuentran en el Form Facademico.
Estoy usando este codigo para regresar de un Form (Fmateria) a otro Form (Facademico)
Código:
Fmateria.Close;//como tambien Finscripcion.CLose;
Facademico.DBgM.Fields[1].FocusControl;//solo cambio DBgM por DBgI
Facademico.Show;
Hice la prueba con ambos codigos en forma individual, pero no me funciona, siempre que retorno, regresa al DBGrid del registro al primero, cuando deberia estar seleccionado el que habia marcado antes..
Y lo mismo para el 2do DBGrid, primero selecciono el registro del DBgI (digamos el 5to registro) y luego me dirijo a otro Form Fmateria y una vez ingresado tantas materias/registros, retorno al Facademico, pero igual se selecciona el primer registro del DBgI, cuando deberia haber se quedado donde estaba antes. osea en el 5to registro. Sin embargo se va al 1er registro. del DBGrid1 o DBgI, el que esta relacionado con el DataSource de Qinscripcion.
Quisiera saber como puedo hacer para que el seleccionado (foco) no se mueva, no se vaya al principio, eso para el primer DBgI.
Y para el segundo DBgM, que siempre se quede en el ultimo registro seleccionado...
Alguna sugerencia.
Gracias...
Publicado:
Lun Abr 26, 2010 4:23 am
Sizne Magnífico usuario
Registrado: Oct 16, 2006 Mensajes: 46
Asunto:
Holas a todos...
Les comento que esta sentencia me ayudo a ubicar el foco...
Código:
TBookmark
Saludos a todos
Publicado:
Sab May 01, 2010 5:35 pm
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto:
Puedes probar también con RecNo. Esta propiedad guarda el registro actual. La podrías usar de la siguiente forma:
1. Antes de abrir los formularios guardas el RecNo actual:
En las variables privadas del formulario añades:
Código:
var
posicion : integer;
En el procedimiento que muestra las otras ventanas pones:
Código:
posicion := Facademico.DBgM.RecNo;
.......
Y luego, tras cerrar el formulario vuelves a asignar el RecNo guardado para que se te posicione en el mismo registro que estaba:
Código:
Facademico.DBgM.RecNo := posicion;
Tienes que tener en cuenta el ámbito de la variabla "posicion", es decir, si acaso cierras el formulario donde está la tabla Facademico.DBgM (o al que quieras regresar) la variable "posicion" tendrás que crearla en un formulario o unidad que no se destruya para que no pierda su valor.
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A