• Lunes 18 de Noviembre de 2024, 00:51

Autor Tema:  Eliminar Filas En Un Stringgrid  (Leído 5756 veces)

el_shanky

  • Miembro MUY activo
  • ***
  • Mensajes: 177
    • Ver Perfil
Eliminar Filas En Un Stringgrid
« en: Martes 1 de Abril de 2008, 09:47 »
0
Me encuentro trabajando en un StringGrid y se me presenta la necesidad de eliminar una fila completamente.

Si alguien sabe de como hacer esto de forma sencilla o si alguien sabe de alguna función del StringGrid que logre esto, le estaré muy agradecido.

Mientras la sigo peliando...
 :lightsabre:  :lightsabre:  :lightsabre:
"La programación hoy en día es una carrera entre los ingenieros de software intentado construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De lejos, el Universo está ganando." - Rich Cook



http://www.maxcode.com.ar

http://www.shanky.com.ar

Elforious

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
Re: Eliminar Filas En Un Stringgrid
« Respuesta #1 en: Miércoles 2 de Abril de 2008, 19:23 »
0
Lo primero que se me ocurre (descartando los archivos), es que borres los datos de toda una fila, y que en una o varias variables guardes los datos de la de abajo para asignársela a la fila de arriba, y así sucesivamente hasta llegar a la última fila, algo así como el método burbuja, espero que me hayas entendido...

Suerte...

el_shanky

  • Miembro MUY activo
  • ***
  • Mensajes: 177
    • Ver Perfil
Re: Eliminar Filas En Un Stringgrid
« Respuesta #2 en: Miércoles 2 de Abril de 2008, 20:25 »
0
AL fin y al cabo es String Grid es una porquería!!!  :angry:

Bué lo que hice para zafar es en realidad borrar cada celda del stringgrid y luego descontarla...

Código: Text
  1.  
  2.  
  3. int cont=Form1->StringGrid1->RowCount;//Pongo la cantidad de filas en un contador
  4.  
  5. while(cont!=0){//este while me borra todas las celdas de cada fila poniendoles ""
  6. for(int i=0;i<6;i++)
  7.         Form1->StringGrid1->Cells[i][cont]="";
  8. cont--;
  9. }//end while
  10.  
  11. cont=Form1->StringGrid1->RowCount;//vuelvo a poner el contador al max de filas
  12.  
  13. while(cont!=2){//Ahora elimino las filas que estan de mas (TODAS MENOS 1)
  14.         Form1->StringGrid1->RowCount--;
  15.         cont--;
  16. }//en while
  17.  
  18.  
  19.  
  20.  

Esto logra mi cometido pero la verdad me parece medio rebuscado...

Me desilusiona que el stringGrid no tenga una función tan básica como la que busco.

Ahora, lo que yo buscaba era limpiar todas las celdas, en el caso de tener que limpiar solo una lo que vos me decis Elforious es corecto, sería cuestion de eliminar el contenido de las celdas de esa fila y luego subir todas las filas una mas arriba.

Gracias igual! salute
"La programación hoy en día es una carrera entre los ingenieros de software intentado construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De lejos, el Universo está ganando." - Rich Cook



http://www.maxcode.com.ar

http://www.shanky.com.ar

el_shanky

  • Miembro MUY activo
  • ***
  • Mensajes: 177
    • Ver Perfil
Re: Eliminar Filas En Un Stringgrid
« Respuesta #3 en: Jueves 3 de Abril de 2008, 11:52 »
0
Siguiendo investigando encontré que existe una función que es:


Código: Text
  1.  
  2.  
  3. StringGrid1->Rows[1]->Delete(1);
  4.  
  5.  
  6.  

La cual debería andar y borrarme la fila uno, y compila lo mas bien pero al momento de ejecutar esa parte del código salta un error diciendo (LO DE LA IMAGEN)


Etonces deduzo que si tiene ese error y esa función... es x que se debe poder eliminar una fila... alguien sabe como pasarla x alto a esa restricción?


Bué me aprece que me stoy haciendo mucho bardo al pedo... igal si alguien sabe de esto que hablo que me explice x favor!

gracias
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.
"La programación hoy en día es una carrera entre los ingenieros de software intentado construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De lejos, el Universo está ganando." - Rich Cook



http://www.maxcode.com.ar

http://www.shanky.com.ar

Elforious

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
Re: Eliminar Filas En Un Stringgrid
« Respuesta #4 en: Sábado 5 de Abril de 2008, 02:41 »
0
Conosco una función que borra pero no elimina:
Código: Text
  1.  
  2. StringGrid1->Rows[1]->Clear();
  3.  
  4.  
Espero que te ayude.

el_shanky

  • Miembro MUY activo
  • ***
  • Mensajes: 177
    • Ver Perfil
Re: Eliminar Filas En Un Stringgrid
« Respuesta #5 en: Sábado 5 de Abril de 2008, 03:47 »
0
Sisi con esa simplifiqué uno de los ciclos while que puse arriba... pero siguo sin entender x que existen funciones que no se permite usar... :S
"La programación hoy en día es una carrera entre los ingenieros de software intentado construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De lejos, el Universo está ganando." - Rich Cook



http://www.maxcode.com.ar

http://www.shanky.com.ar

Elforious

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
Re: Eliminar Filas En Un Stringgrid
« Respuesta #6 en: Sábado 5 de Abril de 2008, 18:46 »
0
Si, lo que pasa es que existen funciones que en "TEORÍA" funcionan, pero en la vida real no es así, así que para asegurarte de que todo salga bien tienes que hacerlo a pulso  :comp:  jejeje, lo cual es divertido y así aprendes a salir del paso en situaciones difíciles...

Saludos.

el_shanky

  • Miembro MUY activo
  • ***
  • Mensajes: 177
    • Ver Perfil
Re: Eliminar Filas En Un Stringgrid
« Respuesta #7 en: Miércoles 30 de Abril de 2008, 15:20 »
0
haa veo.. vas copiando todo lo de la celda siguiente antes de eliminarla... bien! igual ya no lo necesito! Pero gracias igualmente! ya va a llegar alguien que le saque provecho!

Salute
"La programación hoy en día es una carrera entre los ingenieros de software intentado construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De lejos, el Universo está ganando." - Rich Cook



http://www.maxcode.com.ar

http://www.shanky.com.ar