Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #6  
Antiguo 20-03-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
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 kirios.

Ahora creo que entendí lo que buscas.

A ver... tenés un archivo de texto con el nombre de un objeto y un valor separados por un ';' . Supongamos que se llame Archivo.txt y contenga lo siguiente:
Código:
cama;1
mesa;2
silla;3
vaso;4
plato;5
banco;6
cuchillo;7
tenedor;8
cuchara;9
fuente;10
Entonces sería mucho más fácil hacerlo usando TStrings :
Código Delphi [-]
var
  TS: TStrings;

(* Cargar valores, asignar Tags *)
procedure TForm1.FormCreate(Sender: TObject);
var
  i,c: Integer;
begin
  TS:= TStringList.Create;
  TS.LoadFromFile('C:\Archivo.txt'); // leer datos del archivo
  c:=0;
  for i:= 0 to ComponentCount-1 do
    if Components[i] is TCheckBox then
    begin
      TCheckBox(Components[i]).Caption:= Copy(TS[c],1,Pos(';',TS[c])-1); // nombre del objeto
      TCheckBox(Components[i]).Tag:= c;  // índice
      Inc(c);
    end;
end;

(* Devolver total *)
function TForm1.preciobar: Double;
var
  i,c:integer;
  s: string;
begin
  Result:= 0;
  c:=0;
  for i:= 0 to ComponentCount - 1 do
    if Components[i] is TCheckBox then
      if TCheckBox(Components[i]).Checked then
      begin
        s:= TS[TCheckBox(Components[i]).Tag]; // dato
        Result:= Result + StrToFloat(Copy(s,Pos(';',s)+1, MaxInt)); // valor
        Inc(c);
      end;
end;

(* Llamada *)
procedure TForm1.Button1Click(Sender: TObject);
begin
  Label1.Caption:= FloatToStr(preciobar);
end;

(* Liberar *)
procedure TForm1.FormDestroy(Sender: TObject);
begin
  TS.Free;
end;
Por supuesto tendrás que tener tantos CheckBoxs como datos haya en el archivo...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Una ayudita con un gps newgeek Varios 7 09-12-2010 13:43:58
Ayudita con HD dape Varios 5 29-04-2008 18:33:21
Una ayudita, para este codigo ingabraham OOP 14 17-08-2007 01:22:48
ayudita con mi space en mns¿? gypi Varios 7 08-08-2007 10:53:34
una ayudita Delphius Varios 4 16-01-2005 11:24:58


La franja horaria es GMT +2. Ahora son las 18:51:57.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi