![]() |
TStringList en TObjectList
Buenas.
Utilizando una variable del tipo TStringList boy haciendo un ADD y lo boy rellenando. Una vez rellenado con x veces te lo asigno a un TObjectList de tal forma: var temp: TStringLIst master: TObjectList i: integer for i:= 0 to 5 do temp.add(i) master.add(temp) temp.clear En este ejemplo temp lo utilizo para cargar una serie de datos y luego se los asigno a master. El problema biene cuando hago : listBox1.items.add(TStringList(master[0]).estring[0]); Pues que al borrar el temp borro tambien la referencia del master. Solucion: Como puedo hacer q temp cada vez que lo utilize sea un nuevo objeto, de tal forma que la rutina del for do ,yo la boy a utilizar varias veces y con diferntes datos y esos floque de datos se iran almacenando en el TObject. No seria algo como temo.newInstance o new(temp) Espero q me haya explicado bien. Gracias de nuevo foreros. |
Vamos a ver...
En tu código, temp, es una referencia a TStringList, no un TStringList. Para que la referencia a punte a un nuevo objeto, tienes que asignarle una instancia, por ejemplo, con su costructor: Temp := TStringList.Create; Por el mismo motivo, tienes que instanciar master, si no quieres que te de un Access Violation en ejecución. |
La franja horaria es GMT +2. Ahora son las 04:25:53. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi