Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   como iniciar un consecutivo 00,01,02 ect (https://www.clubdelphi.com/foros/showthread.php?t=28517)

Luis Alberto 21-12-2005 22:26:50

como iniciar un consecutivo 00,01,02 ect
 
Como inicio un consecutivo asi:

consecutivo:=consecutivo+01

para obetner al final 01 y despues 02 y aasi susesivamente despues oviamente 10 11 12 13
etc.


Si sabel alguin gracias....

delphi.com.ar 21-12-2005 22:29:08

¿?¿?... Quieres saber como hacer un contador??.. lo estas mostrando en el ejemplo
Cita:

Empezado por Luis Alberto
consecutivo:=consecutivo+01

Como no creo que sea esto lo que preguntas, ¿porqué no explicas bien que es lo que quieres y para que?

Saludos!

Luis Alberto 21-12-2005 22:35:25

Necesito tener un contador pero que inicie con 01 y despues incremente 02 y despues 03,04,05,06,07,08,09, como normalemnte se ponen asi 1,2,3,4,5,6,7,8,9 me explique

OSKR 21-12-2005 22:44:13

Pues asi mismo como lo tienes pero creo q deberias tener la comilla en el 01 : '01' y el contador sria un String..........no?

Luis Alberto 21-12-2005 22:46:49

y puedes ir incrementando un Strign?

OSKR 21-12-2005 22:47:23

contador:= contador + Format( '%02d' ,cont);
Concatena una ',' despues de cada iteración excepto la última
Como no domino Delphi tanto como el Builder acepto cualquier correccion de un delphiano :D

fidel 21-12-2005 23:03:35

Hola:

Esto te convierte los 50 primeros números en una cadena formada por los números consecutivos del 1 al 50 con formato de 2 caracteres cada uno (y separados con coma y un espacio).

Código Delphi [-]
uses
  ..... StrUtils;

...

procedure TForm1.FormCreate(Sender: TObject);
var
  i: integer;
  cadena: string;
begin
  cadena := '';
  for i := 1 to 50 do
    begin
      cadena := cadena + RightStr('00' + IntToStr(i),2) + ', ';
    end;
    ShowMessage(cadena);
end;

Un saludo.

ronalg 22-12-2005 01:01:39

Dos posibilidades
 
Bueno una sería así:
Código Delphi [-]
function convertir_n(valor:integer;const cant_dig:byte=3):string;
var val_txt,ceros:string;
    i,leng_val:integer;
begin
     val_txt:=inttostr(valor);
     leng_val:=length(val_txt);
     if leng_val>=Cant_dig then
     begin
          result:=val_txt;
     end
     else
     begin
          ceros:='';
          for i:=1 to (cant_dig-leng_val) do
          begin
               ceros:=ceros+'0';
          end;
          result:=ceros+val_txt;
     end;
end;

esto es para convertir un valor entero en la cantidad de digitos que quieras, y este resultado sera una cadena string.

PERO... (siempre hay un pero), si el valor a mostrar es un campo de una tabla como el codigo autogenerado o algo asi, lo unico que tienes que hacer es modificar el valor de la propiedad DISPLAYFORMAT del campo:

DisplayFormat=####00

Esto te mostrara cualquie valor menor a 10 con dos digitos obligatorios y si e mayo no se hara problema igual te los muestra completos, es lago asi como un maskedit directo para el campo.

ESpero te sirva.

Neftali [Germán.Estévez] 22-12-2005 09:17:25

Abriendo nuevos hilos referentes a la misma pregunta, lo único que haces es liar a quien te está respondiendo, hacer perder el tiempo a los demás y dejar sin parte de la información a los que están leyendo el segundo hilo...

Se te han propuesto algunas cosas en el hilo original y te han preguntado otras cuantas (a la mayoría no has respondido????).

http://www.clubdelphi.com/foros/showthread.php?t=28475
:mad::mad:

delphi.com.ar 22-12-2005 13:48:05

Cita:

Empezado por Luis Alberto
Necesito tener un contador pero que inicie con 01 y despues incremente 02 y despues 03,04,05,06,07,08,09, como normalemnte se ponen asi 1,2,3,4,5,6,7,8,9 me explique

Matemáticamente el cero a la izquierda no tiene valor, o sea que no vas a tener ningún tipo de datos numérico que naturalmente tenga ceros a la izquierda. Si puedes hacer que su representación en una cadena tenga ceros a la izquierda, o bien la formatees como mas te guste. Cualquiera de las opciones que te ofrecieron pueden ser válidas, particularmente yo prefiero usar estas funciones:
LPad y RPad

Saludos!

Luis Alberto 22-12-2005 17:51:59

Gracias por su ayuda creo que ya me funciono, Neftali gracias por tu comentario y misl desculpas por eso...


La franja horaria es GMT +2. Ahora son las 22:38:54.

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