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 05-12-2010
calcena calcena is offline
Miembro
NULL
 
Registrado: nov 2010
Posts: 19
Poder: 0
calcena Va por buen camino
Posicion actual en TstringGrid

Buenas, tengo cargado un TStringGrid por query y me gustaria que al pulsar una fila en un text poner la posicion que ocupa relativa respecto al total query.recordcount; y no se que funcion o parametro utulizar en delphi.
Gracias.

ejemplo --> 2 de 150
Responder Con Cita
  #2  
Antiguo 05-12-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola calcena.

Creo que esto es lo que buscas:
Código Delphi [-]
procedure TForm1.FormShow(Sender: TObject);
var
 i: Integer;
begin
  Query .Open;
  // considerar si hay columnas fijas y ajustar nro de columnas
  StrGrd.ColCount:= StrGrd.FixedCols + Query .FieldCount + 1;
  // tantas filas como nros de registros
  StrGrd.RowCount:= Query .RecordCount;
  // Ocultar columna con RecNo
  StrGrd.ColWidths[StrGrd.FixedCols]:= 0;
  // Poner nombres de campos en fila 0 ( si queres...)
  for i:= 0 to Query .FieldCount-1 do
    StrGrd.Cells[StrGrd.FixedCols+i+1,0]:= Query .Fields[i].FieldName;
  // Cargar campos en StringGrid
  while not Query .Eof do
  begin
    // primera columna oculta contiene el número de registro
    StrGrd.Cells[StrGrd.FixedCols,Query .RecNo]:= IntToStr(Query .RecNo);
    // resto de los campos al StringGrid
    for i:= 1 to Query .FieldCount do
      StrGrd.Cells[StrGrd.FixedCols+i,Query .RecNo]:= Query .Fields[i-1].AsString;
    Query .Next;
  end;
  Query .Close;
end;

procedure TForm1.StrGrdSelectCell(Sender: TObject; ACol, ARow: Integer;
  var CanSelect: Boolean);
begin
  // Mostrar número de registro en título del form
  Caption:= Format('%s de %d',
    [StrGrd.Cells[StrGrd.FixedCols, ARow], StrGrd.RowCount]);
end;

No sabía donde lo querías mostrar el mensaje así que lo hago en el Caption del Form, pero vos podés ubicarlo donde más te guste.
Otra opción es hacer FixedCols = 1 y poner allí el RecNo, pero me parece que no es lo que querías...


Saludos.

Última edición por ecfisa fecha: 05-12-2010 a las 21:03:36.
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
Elegir Posicion de una cadena String y eliminar caracter en una posicion deseada BuRtOn Varios 14 26-03-2009 23:59:39
TStringGrid + TAB mjjj Varios 1 15-02-2008 14:19:23
Como obtener la posicion actual del cursor en word Gabo C++ Builder 1 08-02-2008 14:08:59
TStringGrid jorge_mosquera Varios 1 10-02-2005 16:08:45
Como obtener la posicion actual de una tabla mharo Conexión con bases de datos 2 16-07-2003 20:05:06


La franja horaria es GMT +2. Ahora son las 12:12:23.


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