Foros del Web » Programación para mayores de 30 ;) » Programación General »

Saber numero de registro en que estoy en un DBGrid y acceder a Uno

Estas en el tema de Saber numero de registro en que estoy en un DBGrid y acceder a Uno en el foro de Programación General en Foros del Web. Hola amigos del foro me perdi por un tiempo, y muchisimas gracias por su ayuda de antemano. Miren tengo el siguiente problemon en Delphi: Lo ...
  #1 (permalink)  
Antiguo 31/08/2006, 12:17
 
Fecha de Ingreso: diciembre-2005
Ubicación: Bolivia
Mensajes: 58
Antigüedad: 19 años, 1 mes
Puntos: 0
Saber numero de registro en que estoy en un DBGrid y acceder a Uno

Hola amigos del foro me perdi por un tiempo, y muchisimas gracias por su ayuda de antemano.

Miren tengo el siguiente problemon en Delphi:
Lo que quiero: Un simulador de Sorteo teniendo una base de datos plana en Access, en mi formulario tengo un Boton donde me diga SORTEAR (Habilito el timer puesto mas antes en falso) y luego PARAR (Deshabilito el timer) haciendo el doble clic en el Timer tengo el siguiente Codigo:

procedure TFPrincipal.Timer1Timer(Sender: TObject);
var ContadorReg,PUNTERO:integer;
begin
Randomize; //empieza a funcionar los numeros aleatorios
ContadorReg:=dm1.Tagenda.RecordCount; //Cuento la cantidad de registros que tengo.
Puntero:=round(random(ContadorReg)+1); //Genero un # aleatorio
TStringGrid(DBGrid1).Row:=puntero; //Accedo a una fila determinado por el puntero
SetFocus;//Me voy alli... enfoco
//Para que sea consecutivo
{if i=ContadorReg then
Begin
dm1.Tagenda.Next;
DM1.Tagenda.First;
i:=0;
End
else
Begin
i:=i+1;
dm1.Tagenda.Next;
End;
Label1.Caption:='No Regs:'+inttostr(ContadorReg)+' Selector:'+'en Proceso';}
end;


Teniengo este procedimiento me corre normalmente para unos 2 a 7 registros máximo, mayor a esta me pone un error de index fuera de rango o algo por ahi, por favor amigos. ¿Porque el error esta? ¿Habrá otra forma de hacer este proceso que quiero? ¿Cual serìa mi forma de acceder a una fila(registro) específica de me DBGrid?

Por fa... amigos estoy ansioso de tener respuestas a estas mis dudas, que tal vez es muy novato...
__________________
Con estudio, dedicación y mucho trabajo logras tus metas amig@ [email protected]
Caracollo-Oruro-Bolivia
RMA Soft System
  #2 (permalink)  
Antiguo 01/09/2006, 00:02
Avatar de bitbow  
Fecha de Ingreso: julio-2006
Ubicación: Distrito Federal
Mensajes: 635
Antigüedad: 18 años, 7 meses
Puntos: 34
El DBGrid es una representacion grafica de la navegacion de la tabla, por ejemplo si en el DBGrid esta en el registro 7 para acceder a esa tupla seria con el componente TTable o TQuery asi :

tupla := Query.FieldByName('campo').AsString;

no se si por eso te marque ese problema, para ir a registros especificos existen varios procedimientos como RecordNo ( Query.RecordNo := Numero_de_registro ).

Disculpa si no soy muy claro en la explicacion pero no entiendo como fonuncia tu aplicacion (soy algo torpe para entender ).

Saludos.
__________________
El ego es el mayor enemigo de un hombre inteligente.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:48.