Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Estructura complicada (https://www.clubdelphi.com/foros/showthread.php?t=33073)

alastor 26-06-2006 21:59:50

Estructura complicada
 
Hola. Nesecito una estructura que mientras yo vaya borrando cada registro de una ADOTable ella me vaya realizando una accion, mas concretamente, incrementando un valor determinado a un progressbar, cosa de que cada vez que borre un registro, incremente un valor en el progressbar. Si alguno pudiera ayudarme con esto se lo agradeceria.
Gracias

ContraVeneno 26-06-2006 23:32:59

¿una estructura?

marcoszorrilla 26-06-2006 23:38:49

La cosa es sencilla, según entiendo, pero primero tendrás que saber cuantos registros van a eliminarse para poder pasar a la barra de progreso los valores correspondientes, luego no es más que ir incrementando en uno la barra.

Un ejemplo:
Código Delphi [-]
Try
  AniWait.Visible:=True;
  AniWait.Active:=True;


  DmAni2.Gruptarif.Exclusive:=True;
  DmAni2.Gruptarif.Open;
  DmAni2.Gruptarif.EmptyTable;

  DmConta.QrActualiza.Close;
  DmConta.QrActualiza.Sql.Clear;
  DmConta.QrActualiza.Sql.Add('Select * from CaGtarif ');
  DmConta.QrActualiza.Open;

  gActualiza.MaxValue :=DmConta.QrActualiza.RecordCount;
  DmConta.QrActualiza.First;

    While not DmConta.QrActualiza.Eof do
    begin
    DmAni2.Gruptarif.Append;
    gActualiza.Progress:= gActualiza.Progress + 1;

    DmAni2.GrupTarifGrupo.Value  := DmConta.QrActualiza.Fields[0].AsString;
    DmAni2.GrupTarifNombre.Value := DmConta.QrActualiza.Fields[1].AsString;

    DmConta.QrActualiza.Next;
    end;

  AniWait.Visible:=False;
  lbmsge.Caption:=' Grupos de Tarifa actualizados: '+FormatFloat(',0',DmConta.QrActualiza.RecordCount);
  lbmsge.Left:=Panel1.Width Div 2 - lbmsge.Width div 2 ;

Un Saludo.

alastor 27-06-2006 18:46:26

Aclarando
 
Podrias si no te es mucha molestia explicarme de tu codigo las siguientes lineas:
AniWait----->Que componente es
DmAni2----->Supongo que es el datamodule
DmConta--->Otro datamodule???
CaGtarif --->Es la misma que esta, o que relacion guarda Gruptarif ???
quizas yo lo que estoy es borrando la tabla y busco que al borrar cada campo se incremente la barra.
Muchas gracias, seguiremos en contacto.

marcoszorrilla 27-06-2006 20:28:18

AniWait, es un componente TAnimate, que muestra unas carpetas en movimiento como las de Windows cuando copias archivos, lo que ocurre es que he pegado el código.

Resumiendo lo que necesitas es una Barra de progreso y lo primero contar el número de registros que vas a eliminar, luego pones ese número como máximo valor de la barra, el mínimo 0 y el incremento lo vas alimentando cada vez que elimines un registro, de esta manera la barra se llenará cuando elimines el último registro.

Un Saludo.

alastor 28-06-2006 18:42:40

Agradecido
 
Muchisimas gracias por responderme, ya todo me pincho bien.


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

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