FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Paso de Array entre Clases
Hola Soy nuevo en el lenguaje DELPHI, llevo varios años trabajando en otros lenguajes y la verdad se me a complicado mucho el lograr pasar un arreglo dinamico de objetos de una clase particular, para utilizarlo en otra clase...
Código Delphi [-]type TObjeto = class private NombreObj:string; TipoObj:Integer; PosiObjX:Integer; posiObjY:Integer; MoveUP:Boolean; MoveDOWN:Boolean; MoveRIGHT:Boolean; MoveLEFT:Boolean; ColorObj: TColor; MyIcono: TIcon; public // procedure TObjeto.Create(AOwner: TObjeto); override; procedure setNombreObj(NomObj:String); procedure setTipoObj(TipObj: Integer); procedure setPosObj(posX:Integer;posY:Integer); procedure setMove(UP,DOWN,RIGHT,LEFT:Boolean); procedure setIcon(MyIco:TIcon); procedure setColor(Color:TColor); function getTipoObj():Integer; function getNombreObj():string; end; la idea es que quiero encapsular muchos objetos de esta clase en un array, y poderlos mostrar en otra clase diferente en la que cree el array, he voletado mi codigo de mil maneras, pero no logro conseguir que mi arreglo tenga los datos que yo ingrese.. tal vez y creo yo que se estan perdiendo la referencia de la memoria, no se... si alguien puede ayudarme le agradeceria mucho, ya que necesito entregar una aplicacion en menos de ocho dias y estooy quedado desde hace rato en algo tan basico como eso... mil gracias Juank |
#2
|
||||
|
||||
podrias poner un ejemplo de lo que quieres hacer en otro lenguaje que domines para explicarte como hacerlo en delphi?
__________________
self.free; |
#3
|
||||
|
||||
ya va!
clasee Tobjeto con sus respectivos metodos Set y Get
en otro clase necesito llenar el arreglo de objetos
en esta clase quiero llenar ArrayObjetos con los objetos de Tobjetos lo estoy haciendo asi efectivamente esta llenando el Array (al visualizarlo con un brekpoint) ahora quiero desde una clase diferente a las 2 visualizar el arreglo pero al hacer una funcion de pruueba para ver si esta llegando el tamaño de array me muestra -1 (osea que no es la misma referencia al array) o tratar de mostrar el nombre
|
#4
|
||||
|
||||
puedes crear tu array de objetos usando la funcion varArrayCreate, o usando el tipo TList, veamos como hacerlo con TList;
el llenado de los atributos, no de los objetos:
el acceso:
__________________
self.free; Última edición por droguerman fecha: 30-04-2007 a las 22:19:34. |
#5
|
||||
|
||||
pregunta
me podrias ayudar en la definicion de los objetos respectivos de cada clase para poder acceder a los metodos.. es decir lo que creo que me esta pasando es que al instanciar un objeto de una clase, por ejemplo donde esta lleno el array, no es la misma instancia en memoria.. cual es la forma correcta de declarar un objeto de una clase en varias clases refiriendose al mismo espacio en memoria, algo asi como el patron SIngleton.. una solo instancia de una clase
mil gracias |
#6
|
||||
|
||||
Todo objeto que se crea en Delphi está referenciado por la variable que se usa.
Aquí, la variable miobjeto es un puntero hacia la zona de memoria donde se ha creado la instanciación de la clase (que vaya usted a saber donde es). Cuando hacemos algo así:
En realidad estamos copiando el puntero a la posición cero del array "a". La zona de memoria donde reside el objeto, no se ha tocado para nada. En tu caso particular, ocurre lo mismo:
primero se crea el objeto en memoria, y la dirección donde reside, se copia en la posición "tamano" del array. La respuesta a tu pregunta, por tanto, es copiar el puntero al interior de la clase, pero, no sé si se tratará de eso. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
ayuda paso a paso Shared Connection | eangeles | Providers | 0 | 09-11-2006 02:06:04 |
Novato (Paso a Paso de una consulta) | enecumene | Conexión con bases de datos | 2 | 29-05-2006 20:52:19 |
Paso de Array en variable $_POST | mieltxo | PHP | 4 | 16-06-2005 08:22:51 |
como paso variables entre paginas.php | sarga | PHP | 5 | 22-08-2004 02:06:40 |
Paso de parametros entre delphi y c++ | jsb | C++ Builder | 0 | 16-02-2004 16:22:49 |
|