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 21-01-2004
esquerda21 esquerda21 is offline
Miembro
 
Registrado: may 2003
Posts: 51
Poder: 21
esquerda21 Va por buen camino
TObjectList y TStringList

Buenas. Con vuestra ayuda he echo el siguiente codigo utilizando TObjectList y TStringLIst. Despues de mirar la ayuda me di cuenta q la variable soc en vez de de TObjectList hubiera sido mejo del tipo TStringLIst y con el metodo ADD.Object q aparte de asignarle un objeto tambien permite un string y ese strings yo lo utilizare para un control posterior.
Como podria cambiar soc de TobjectList a TStringList y a cada objeto q le inserte ponerle un string := 0 con el metodo ADD.OBJECT.


var
Form1: TForm1;
soc: TObjectList;
implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
soc:= TObjectList.Create;
soc.OwnsObjects:= true;
end;
//-----------------------------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);
var
indice: integer;
i: integer;
temp: TStringLIst;
begin
I:= 0;
indice:= soc.Add(TStringLIst.create());
temp:= soc.items[indice] as TStringList;
while i <> 5 do
begin
temp.Add(inttostr(i));
i:= i + 1;
end;
//soc.Free();
end;
//------------------------------------------------------------------------
procedure TForm1.Button5Click(Sender: TObject);
var
indice: integer;
i: integer;
temp: TStringLIst;
begin
I:= 0;
indice:= soc.Add(TStringLIst.create());
temp:= soc.items[indice] as TStringList;
while i <> 5 do
begin
temp.Add(inttostr(i + 10));
i:= i + 1;
end;
//soc.Free();
end;
//------------------------------------------------------------------------
procedure TForm1.Button2Click(Sender: TObject);
begin
form1.Label1.Caption:= inttostr(soc.count);
end;
//------------------------------------------------------------------------
procedure TForm1.Button3Click(Sender: TObject);
var
s: integer;
begin
for s:= 0 to TStringList(soc[0]).Count - 1 do
form1.ListBox1.Items.Add(TstringList(soc[0]).strings[s]);
end;
//------------------------------------------------------------------------
procedure TForm1.Button4Click(Sender: TObject);
var
s: integer;
begin
for s:= 0 to TStringList(soc[1]).Count - 1 do
form1.ListBox1.Items.Add(TstringList(soc[1]).strings[s]);
end;
//------------------------------------------------------------------------
end.
Responder Con Cita
  #2  
Antiguo 21-01-2004
Avatar de marto
marto marto is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona, Catalunya
Posts: 882
Poder: 21
marto Va por buen camino
1.- Si vas aponer código en tus post's, por favor, ponlo entre los tags
Código:
...
e indéntalo, sinó es terrible intentarlo seguir.

2.-No soy moderador, pero creo que una cosa es preguntar una duda o pedir que se explique una técnica y otra es poner el código del programa y pedir que te lo recodifiquemos. No sé, es una opinión.
De todas maneras, te diré que si buscas en la ayuda de TStrings verás que tiene una propiedad Objects que es un array. Cuando haces un AddObject(String1, Object1), Object1 queda vinculado a String1 de manera que si String1 esta en la posicion 3 de los Items de la TStrings, Object1 estará en Objects[3].
__________________
E pur si muove

Última edición por marto fecha: 21-01-2004 a las 10:44:40.
Responder Con Cita
  #3  
Antiguo 21-01-2004
esquerda21 esquerda21 is offline
Miembro
 
Registrado: may 2003
Posts: 51
Poder: 21
esquerda21 Va por buen camino
Q es un tags?... Igualmente la proxima vez q haga un post intentare averiguarlo para asi seguir las normas del foro.

POr la segunda custion q has expuesto t dire q simplemente es mejor ver un ejemplo y si es ejemplo con explicacion ya te c..gas...
POr otra parte yo no he puesto el codigo para q me lo corrijan, lo he insertado para dar una idea precisa de lo q quiero hacer. Igualmente respeto tu opinion y en la proxima pregunta intentare se mas esplicito.

Igualmente Recive mi mas cordial agradecimiento por la atencion q me has prestado.
Responder Con Cita
  #4  
Antiguo 21-01-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
Cita:
Empezado por esquerda21
Q es un tags?... Igualmente la proxima vez q haga un post intentare averiguarlo para asi seguir las normas del foro.
Un tag es una etiqueta que sirve para distintas cosas (poner tipos de letra, indentar código,.....). Te recomiendo este enlace donde se explican todas las etiquetas, en especial la CODE
Responder Con Cita
  #5  
Antiguo 21-01-2004
esquerda21 esquerda21 is offline
Miembro
 
Registrado: may 2003
Posts: 51
Poder: 21
esquerda21 Va por buen camino
He conseguido introducirlo pero...
-------------------- soc : TStringLIst
var
indice: integer;
i: integer;
temp: TStringLIst;
begin
I:= 0;
indice:= soc.AddObject('0', TStringLIst.create());
temp:= soc.Objects[indice] as TStringList;
while i <> 5 do
begin
temp.Add(inttostr(i + 10));
i:= i + 1;
end;
-----------------
Como hago para representarlo en un listbox? algo así..

form1.ListBox1.Items.Add(TstringList(soc[0]objects[0].strings[0]);??
Responder Con Cita
  #6  
Antiguo 21-01-2004
Avatar de marto
marto marto is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona, Catalunya
Posts: 882
Poder: 21
marto Va por buen camino
prueba esto:

form1.ListBox1.Items := TStrings(Soc.Objects[0]);
__________________
E pur si muove
Responder Con Cita
  #7  
Antiguo 21-01-2004
esquerda21 esquerda21 is offline
Miembro
 
Registrado: may 2003
Posts: 51
Poder: 21
esquerda21 Va por buen camino
Joer marto tu si que eres un maestro.

Funciona de muerte. gracias otra vez.
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


La franja horaria es GMT +2. Ahora son las 09:53:19.


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