Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-01-2007
grone35 grone35 is offline
Miembro
 
Registrado: jul 2006
Posts: 16
Poder: 0
grone35 Va por buen camino
Unhappy Como mover El scroolbar de un stringgrid

Hola a todos:


Mi problema es el siguiente, necesito mientras un stinggrid se va llenando este vaya bajando el scrollbar a la ultima posicion de tal manera que siempre este viendo el ultimo registro de la tabla.

Gracias por su atencion
Salu2
Responder Con Cita
  #2  
Antiguo 08-01-2007
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Hola,

el StringGrid y todos sus decendientes tienen las propiedades Row y Col, que te indica en que columna y fila (es decir, en que celda), está situado el foco en ese momento.
Lo que debes hacer es cada asignar esa propiedad al último row actual, es decir, al rowcount - 1, cada vez que insertas un registro nuevo en el StringGrid:

Código Delphi [-]
  for aRow := 1 to 25 do begin //es un ejemplo
    StringGrid1.Cells[0, aRow] := 'loquesea';
    StringGrid1.Cells[1, aRow] := 'loquesea';
    StringGrid1.Cells[2, aRow] := 'loquesea';
    StringGrid1.Cells[3, aRow] := 'loquesea';
    StringGrid1.Cells[4, aRow] := 'loquesea';
    ...
    StringGrid1.Row := StringGrid1.RowCount - 1; //Al final del bucle, mueves el foco al último row, así se tendrá el efecto que querías.
  end;

Espero te sirva.

Saludos
Responder Con Cita
  #3  
Antiguo 08-01-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

No tengo mucha idea de ese control, pero, haciendo alguna prueba, me parece que bastaría conque según fueras añadiendo las distintas filas, actualizaras la propiedad "Row" del "StringGrid". Algo así:

Código Delphi [-]
var
  i: integer;
begin
  StringGrid1.RowCount := 100;
  for i := 0 to StringGrid1.RowCount-1 do
  begin
    StringGrid1.Rows[i].Add(IntToStr(i));
    StringGrid1.Row := i;
  end;
end;

Edito: Bicho se me adelantó y puede que su respuesta merezca más la pena que la mía aunque diría que son similares.

Y sin embargo el anterior código no se comporta igual que este otro:

Código Delphi [-]
var
  i: integer;
begin
  StringGrid1.RowCount := 100;
  for i := 0 to StringGrid1.RowCount-1 do
  begin
    StringGrid1.Rows[i].Add(IntToStr(i));
    StringGrid1.Row := StringGrid1.RowCount-1;
  end;
end;

Cosas del StringGrid, digo yo, vamos.
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 08-01-2007 a las 16:45:35.
Responder Con Cita
  #4  
Antiguo 08-01-2007
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Pues no lo había probado, lo había hecho de cabeza, y el efecto esperado se consigue con la solución de dec

Código Delphi [-]
var
  i: integer;
begin
  StringGrid1.RowCount := 100;
  for i := 0 to StringGrid1.RowCount-1 do
  begin
    StringGrid1.Rows[i].Add(IntToStr(i));
    StringGrid1.Row := i;
  end;
end;

Es curioso, y no lo entiendo. Hubiera jurado que era culpa del optimizador de Delphi, pero lo he desactivado y sigue haciendo el mismo efecto.
Será como dice David, cosas del StringGrid.

Saludos
Responder Con Cita
  #5  
Antiguo 08-01-2007
grone35 grone35 is offline
Miembro
 
Registrado: jul 2006
Posts: 16
Poder: 0
grone35 Va por buen camino
Gracias Gente!!!

Justo lo que necesitabamos!
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
Como mover una ventana sin bordes SMTZ API de Windows 9 25-02-2017 15:24:39
Como mover una ToolBar Javi2 Varios 0 28-02-2005 09:28:06
Impedir mover el form y redimensionar al mover barra tareas jealousy API de Windows 0 15-06-2004 12:58:05
Como mover una ventana??? cone220 Varios 3 01-06-2004 23:04:09
Como mover un Timage por la form Dantael Gráficos 1 17-11-2003 07:46:56


La franja horaria es GMT +2. Ahora son las 05:55:58.


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