Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-09-2011
ezequiel913 ezequiel913 is offline
Miembro
NULL
 
Registrado: may 2011
Posts: 39
Poder: 0
ezequiel913 Va por buen camino
Código Delphi [-]
...
type
  TStringGrid = class(Grids.TStringGrid);
...
implementation
...
begin
 StringGrid1.DeleteRow(StringGrid1.Row); // Borra fila actual.
end;

Hola Ecfisa!! queria saber si me podes explicar un poco mas este procedimiento, osea lo que yo quiero es poder eliminar la fila del StringGrid que esta seleccionada.

Saludos. Gracias!!
Responder Con Cita
  #2  
Antiguo 24-09-2011
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.681
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
No soy Ecfisa, pero te lo explicaré, es fácil:
Código Delphi [-]
StringGrid1.DeleteRow(StringGrid1.Row); // Borra fila actual.

StringGrid1.Row devuelve el número de fila donde está posicionado el
cursor en el grid, o sea, en la fila de la celda donde está.
Imagina que está posicionado en la fila 2.

Es lo mismo el código anterior, que hacer directamente:
Código Delphi [-]
stringgrid1.DeleteRow(2);
Responder Con Cita
  #3  
Antiguo 24-09-2011
ezequiel913 ezequiel913 is offline
Miembro
NULL
 
Registrado: may 2011
Posts: 39
Poder: 0
ezequiel913 Va por buen camino
Gracias Casimiro Notevi!!!
me ayudo mucho tu explicacion.

Saludos!!

Última edición por ezequiel913 fecha: 24-09-2011 a las 23:16:18. Razón: error de nombre
Responder Con Cita
  #4  
Antiguo 25-09-2011
ezequiel913 ezequiel913 is offline
Miembro
NULL
 
Registrado: may 2011
Posts: 39
Poder: 0
ezequiel913 Va por buen camino
Por mis amigos

Cita:
Empezado por ezequiel913 Ver Mensaje
Gracias Casimiro Notevi!!!
me ayudo mucho tu explicacion.
esto se lo dedico a mi NOVIA SOL que la re amo,y perdon roge por no lllevarte al asado
Saludos!!
Responder Con Cita
  #5  
Antiguo 27-09-2011
ezequiel913 ezequiel913 is offline
Miembro
NULL
 
Registrado: may 2011
Posts: 39
Poder: 0
ezequiel913 Va por buen camino
Problema al borrar una linea del StringGrid!

Hola Gente!!

bueno el tema que tengo es que me elimina mal la fila que selecciono. como es esto??

selecciono una fila del StringGrid y apretó el botón borrar me borra la fila que seleccione pero parece que la deja almacenada en algun lado, una vez que la borre y despues la quiero cargar de vuelta tengo una validacion que no me deja entrar 2 filas iguales, osea me dice que ya fue cargada esa fila, pero no tiene que ser asi, por que yo la borre con anterioridad, eso quiere decir que no me borro del todo la fila que le dije antes. por que en algun lado quedo registrado sino no me tendria que decir que ya fue cargado.

este es el codigo de borrar que tengo:

Código Delphi [-]
  If (SG.Cells[1,SG.Row] = '') or (SG.Row = 0) Then Begin

   Application.MessageBox('No se puede eliminar esta fila','Mensaje');
   Exit;
  End
  Else begin

     SG.DeleteRow(SG.Row);
  
   end;


bueno espero que se entienda lo que queiro decir.

saludos!!!
Responder Con Cita
  #6  
Antiguo 27-09-2011
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.681
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Pues no, no se entiende

En tu código dice:

Código Delphi [-]
If (SG.Cells[1,SG.Row] = '') or (SG.Row = '0') Then
Begin
  Application.MessageBox('No se puede eliminar esta fila','Mensaje');    
  Exit;   
End   
Else 
begin       
  SG.DeleteRow(SG.Row);       
end;
Resumiendo: si la celda está vacía o tiene un cero, saca un mensaje y sale. NO borra.
Si tiene algo escrito distinto de '' y distinto de cero, (que por cierto tendrás que poner el cero entre comillas porque el stringgrid sólo almacena cadenas)
entonces sí la borra.

¿Y cuál es el problema entonces?
Responder Con Cita
  #7  
Antiguo 28-09-2011
ezequiel913 ezequiel913 is offline
Miembro
NULL
 
Registrado: may 2011
Posts: 39
Poder: 0
ezequiel913 Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Pues no, no se entiende

En tu código dice:

Código Delphi [-]
If (SG.Cells[1,SG.Row] = '') or (SG.Row = '0') Then
Begin
  Application.MessageBox('No se puede eliminar esta fila','Mensaje');    
  Exit;   
End   
Else 
begin       
  SG.DeleteRow(SG.Row);       
end;
Resumiendo: si la celda está vacía o tiene un cero, saca un mensaje y sale. NO borra.
Si tiene algo escrito distinto de '' y distinto de cero, (que por cierto tendrás que poner el cero entre comillas porque el stringgrid sólo almacena cadenas)
entonces sí la borra.

¿Y cuál es el problema entonces?

Lo que esta dentro del IF es para que no borre una linea que esta vacía y tampoco para que no borre la linea donde están los títulos de las columnas.

el tema es así:
- tengo que ingresar datos de productos en un StringGrid con su respectiva cantidad, si quiero ingresar mas cantidad del mismo producto solo modifico la columna de cantidad. si por alguna razón elimino este producto y después lo quiero ingresar devuelta me dice que ya fue cargado anteriormente, eso quiere decir que en algún lado quedo registrado ese Producto en el StringGrid o en otro lado.
Tengo que poder cargar productos y eliminarlos cuantas veces quiera, y si ya fue eliminado del StringGrid poder volver a cargarlo sin ningún problema.

sino se entiende avísame de vuelta.

saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como Asignar los campos a un DbGrid en tiempo de ejecucion oscarac Varios 5 03-06-2011 05:55:59
Si DBGrid no lo permite como trabajar con StringGrid Kenobi Varios 1 26-02-2008 16:00:22
Cómo asignar un valor a una celda de un DBGrid bellota Varios 9 20-06-2006 20:55:29
COMO CREAR UN dbGRID ESTILO CLIPPER stringgrid ASAPLTDA OOP 1 16-04-2006 16:05:48
como asignar un valor a una columna en un dbgrid Shidalis Varios 4 18-07-2005 23:50:46


La franja horaria es GMT +2. Ahora son las 03:13:26.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi