Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-11-2006
JM75 JM75 is offline
Miembro
 
Registrado: sep 2006
Posts: 25
Poder: 0
JM75 Va por buen camino
Borrar fila seleccionada de un componente TStringGrid

Hola, tengo un componente TStringGrid con una serie de filas, siendo la primera fila fija. Lo que necesito es saber cómo se puede borrar la fila seleccionada. Hasta ahora he conseguido borrar la primera fila que no es fija con el siguiente código que me han pasado, pero no hace lo que necesito:

while (aux < Grid.RowCount) do
begin
Grid.Rows[aux]:=Grid.Rows[aux+1];
index:=index+1;
end;
if (Grid.RowCount > 2) then
begin
Grid.RowCount:=Grid.RowCount-1;
end;

Gracias por adelantado.
Responder Con Cita
  #2  
Antiguo 15-11-2006
Avatar de aldmoscardi
aldmoscardi aldmoscardi is offline
Miembro
 
Registrado: oct 2006
Posts: 38
Poder: 0
aldmoscardi Va por buen camino
borrar fila StringGrid

Lo que te sugiero es en actives la propiedad de la grilla selectrow, y que tomes el numero de fila al realizar clic sobre la fila, berifiques que no sea nulo y procedas a pasarle un clear al numero de fila seleccionada, cualquier cosa manda un correo que te mando un ejemplo
Responder Con Cita
  #3  
Antiguo 15-11-2006
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.269
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Una opción:

Código Delphi [-]
    //-----------------------------------------------------------
    // Mover el resto de filas hacia arriba
    procedure DeleteRow1(StringGrid: TStringGrid; ARow: Integer);
    var
      i: Integer;
    begin
      with StringGrid do
      begin
        // MOver una posicion hacia arriba el resto de líneas
        for i := ARow to RowCount - 2 do
          Rows[i].Assign(Rows[i + 1]);
        // Decrementar el número total de líneas
        RowCount := RowCount - 1
      end;
    end;
    //-----------------------------------------------------------


y otra opción:
Código Delphi [-]
  //-----------------------------------------------------------
    procedure DeleteRow2(StringGrid: TStringGrid; ARow: Integer);
    begin
      with THackStringGrid(StringGrid) do
        DeleteRow(ARow);
    end;
  //-----------------------------------------------------------

Te faltará (en el segundo caso) esta definición:

Código Delphi [-]
THackStringGrid = class(TStringGrid);
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 16-11-2006
JM75 JM75 is offline
Miembro
 
Registrado: sep 2006
Posts: 25
Poder: 0
JM75 Va por buen camino
Borrar fila seleccionada de un componente TStringGrid

Hola, muchas gracias a los dos. Al final he implementado una mezcla de lo que tenía con la primera opción que me sugirió Neftali:

<DIV class=frame_codigo_delphi>Código Delphi [-]<DIV class=texto_codigo_delphi id=delphi_div_455c2fd095f16>
index := sgViajesCorto.Row;
if (sgViajesCorto.RowCount <> index+1) then
begin

while (index
Responder Con Cita
Respuesta



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
marcar una fila seleccionada!! candido OOP 10 19-10-2007 15:53:46
cambiar color en fila seleccionada en un dbgrid gmontes OOP 2 05-05-2005 22:33:24
Fila seleccionada Dbgrid siempre en el centro Javier_A OOP 2 16-12-2004 16:39:51
como cambiar una fila seleccionada por otra en un DBgrid ? TURING Varios 1 04-08-2004 04:52:01
cambiar color a la fila seleccionada de un grid!! triniti OOP 2 03-08-2004 13:00:42


La franja horaria es GMT +2. Ahora son las 01:49:51.


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
Copyright 1996-2007 Club Delphi