Grid no trae el result correcto
Mira, buenas tardes. Tengo una duda aca y no se como resolver. Tengo un Grid con todas las informaciones que necesito. Que pasa es que necesito hacer una rotina que pueda grabar en otra tabla algunos registros deste grid. Pero la regla es: Grabar hasta 10 registros y no mas. Esto estas haciendo bien. Esta regl yo llamo de ASSOCIACAO. Para yo poner todo esto en otra tabla, yo hizo uso del BookMarkList y BookMark. Pero hay un detalle, que es asi. El ultimo registro del Grid debe ser el Registro padre(hay otra regla aca que estas funcionando, que es de associacio de registros). Vamos imaginar que yo tengo el registro asi:
Cita:
Cita:
Cita:
El numero que puzo antes es solo para usteds ver la orden, el no pertenence a la tabla. |
Yo he logrado exito con uso de StringList, pero ahora necesito remover de StringList, quando yo desmarco el Grid y no puede tener mas de 11 registro.
|
1 Archivos Adjunto(s)
En este ejemplo puedes ver las dos formas más sencillas que hay de borrar una línea de un TStringGrid.
Y la otra:
Un saludo. |
Es un StringList y no StringGrid. Mi gustaria de deletar el ultimo registros o todos de una sola vez.
|
Este codigo esta dando List Index Out of Bound, pero porque?
|
Cita:
|
Otra pregunta: Siempre que yo hacer un desmarque en el Grid, deberia sacar de StringList aquel registro. Como hago esto?
|
Hola.
Una opción es no borrar, sino eliminarlos todos y volverlos a añadir. En cuanto al código, el problema creo que puede estar en que borras el 0, luego borras el 1 (que realmente no es el 1), sino que al borrar antes el 0, estás borrando el 2,... y así sucesivamente. |
Yo tengo logrado exito en el codigo, pero tengo todavia una gran duda aca de como hacer. Mi StringList está llena. Pero mi Grid estan con sus registros marcados. Lo que quiero es quando yo Desmarcar el grid, que pueda sacar de StringList el registro equivalente. Esto que estas mi dejando sin pelo(no tengo muchos), pero quiero conservar lo que aun tengo. No se se fue claro.
|
Cita:
El problema es que no hay ningun evento que "salte" cuando desmarcas un registro, así que tal vez tendrás que programar ese comportamiento combinando alguno de ratón con alguno de teclado. Recorrer la lista de seleccionados y actualizar los existentes en el TStringGrid. |
Un registro marcado tiene um Bookmark para el, entonces, si yo desmarco, el no mas tiene el Bookmark. O que pienso en hacer es, que hago um Loop For en mi lista(StringList) y hago una comparacion, a saber, que si mi registro que tengo en mi lista no tener en Bookmarklist, yo borro. El que pasa es que no se como hacer esto.
|
Este es mi codigo completo. No estoy conseguindo hacer funcionar. las lineas en rojo que mi gustaria de hacer el cierto. Si alguien mejorar el codigo, me quedo grato, pues acepto sugestiones.
|
Cambie mi codigo para este abajo:
Pero que pasa es, que el esta en OnCellClick del grid. Yo hago click en uno y ok, pero quando yo hago click en otro, el carga en la tabla otra vez el que esta marcado y el nuevo, o sea, yo quedo con dos itenes iguales en mi tabla. Si escojo otro, entonces el graba nuevamente el nuevo y los demas que estan marcados(bookmark). Necesito contornar esto. Alguien puede me ayudar? |
Una pregunta sobre el asunto: Quando yo escojo varios itenes en el Grid y despues de escojer todos, trengo que premer el boton derecho del mouse para arribar un Popup. El que pasa es que si yo no mantengo la tecla Ctrl premida, las marcaciones del grid borran. Si yo mantengo la tecla Ctrl premida y hago clique con el Derecho del mouse, el Evento OnCellClick del Grid no es llamado. Necesito llamar el Popup y sin perder las marcaciones y llamando el CellClick. Como hago esto?
|
Señores, hay como no mantener la ordenacion del grid com Bookmark o bookmarklist? Solo este y resuelve mi problema.
|
La franja horaria es GMT +2. Ahora son las 12:03:24. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi