FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#21
|
||||
|
||||
Cita:
// Saludos |
#22
|
|||
|
|||
Hola...
Cita:
Saludos... |
#23
|
|||
|
|||
Hola...
Cita:
A lo mejor coso se refería a lo que tú comentas... Saludos... |
#24
|
||||
|
||||
Cita:
En cuanto a ti Roman esta bueno lo dices lo voy a probar, gracias por tu sugerencias aunque quisiera implementarlo personalmente pero aun me queda una duda ¿Existen templates en delphi si o no?
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
|
#25
|
||||
|
||||
Cita:
Ejemplo:
La última linea tiene miga: - Al crear el TobjectList le pasamos en el parámetro un True, eso le indica que cuando liberemos la lista, libere tambien los objetos que tiene dentro. - Pero, si tiene dentro un Timage y el otro es un panel, ¿cómo sabe delphi liberarlos? cada uno hace una cosa distinta al liberarse, por ejemplo: - el Timage debe liberar la imagen que tenga en su propiedad Picture - el Tpanel debe liberar los controles que tenga dentro (si tiene alguno) Esa es la magia del polimorfismo: Tanto el Timage como el TPanel heredan de TObject, así que cuando ejecutas l.items[0].free no se ejecuta el método Free del TObject, en realidad se ejecuta el método Free del Timage o del TPanel, según sea el caso. rgstuamigo, como ves esa "lista genérica que quieres hacer" está ya hecha, aunque debes comprender los conceptos para poder usarla con toda su potencia. Aún quieres usar records, punteros o lo que quieras, adelante, no seré yo el que te ate las manos . Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 03-10-2008 a las 21:20:17. Razón: corrección ortográfica |
#26
|
||||
|
||||
¿a qué le llamas tú templates?
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#27
|
|||
|
|||
Cita:
Saludos... |
#28
|
||||
|
||||
uhhhhh Bueno los que hemos trabajado en java o en algun otro lenguaje que los tenga ;un template=plantilla que ayuda a trabajar sobre todo para evitar los casting a cada rato, por decir en el ejemplo de Lepe tiene que hacer una especie de casting para acceder al objeto TImage y al objeto TPanel,y cada vez tendria que hacer lo mismo si quieres acceder a dichos objetos, en cambio con template(Al menos en java)tu creas la lista y le dices por medio de plantillas "Voy a tener una lista digamos de TPanel" (al momento de crearla)entonces la lista esperará solo objetos TPanel y nada mas,y cuando saque de lista me devolvera objetos TPanel,sin necesidad de hacer casting a cada rato; no se si me explico, bueno al menos esto es posible en Java por eso preguntaba si exite en Delphi.
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
|
#29
|
|||
|
|||
Cita:
Última edición por coso fecha: 03-10-2008 a las 21:45:43. |
#30
|
|||
|
|||
Cita:
Exactamente! me llegan los mensajes a destiempo |
#31
|
||||
|
||||
Efectivamente no lo hay, pero siempre puedes heredar de TObjectList y sobreescribir las funciones principales para que solo permitan el Tipo que quieras (tardarás 1 minuto cuando sepas hacerlo).
Mediante Gexperts o CnPacks, podrías guardar ese código "maestro" y cuando deseas utilizarlo sólo has de pegarlo y usar "Buscar y reemplazar" Tpanel por TImage. Listo ahora tu lista en lugar de aceptar TPanel, ahora acepta TImage. Saludos.
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#32
|
|||
|
|||
Hola...
Cita:
Con esto puedes tener una lista de TPanel sin hacer casting a cada rato... Saludos... |
#33
|
||||
|
||||
Esta muy bueno tu codigo Maeyanes gracias por compartir tus conocimientos.
Saco mis conclusiones haciendo una comparacion entre Delphi y Java: En Delphi para poder hacerlo tengo que crearme una nueva clase heredada de TObjectList y volver a escribir los metodos; *Significa que cada vez que quiero que mi lista de objeto(TObjectList) sea de algun tipo, necesariamente (para evitar los casting)debo crearme una nueva clase heredada de TObjectList, digamos que si quiero una lista de numeros tengo que hacerme una nueva clase de numero,si quiero de TButton me hago de una nueva clase, y asi sucesivamente.Esto como he dicho solo para evitar hacer casting a cada rato. *En java solo pongo en plantilla el tipo de dato que va ser y listo, no nesito estar creandome nuevas clases y reescribiendo metodos. ES EXATAMENTE lo que hemos estado hablando durante todo el hilo. Seria bueno que Delphi en las proximas versiones tuviera los famosos TEMPLATE Seria de mucha ayuda para los programadores que nos gusta este IDE's. MUCHISIMAS GRACIAS AMIGOS por compartir sus experiencias y sugerencias.
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
|
#34
|
||||
|
||||
Cita:
Esto permitiría que (en delphi 5, 6, 7) con 1 clic de ratón y especificar "TPanel", se creara automáticamente la clase de maeyanes. Los BDS tienen muchas virguerías, por ejemplo añadir un patrón Singleton, etc, pero todo se basa en lo mismo: métodos de rápida implementación para el programador, en realidad, las clases hay que crearlas. Ten presente que Java es un lenguaje interpretado, Delphi es compilado. Delphi es un lenguaje altamente tipificado, mientras que java..... no lo sé, pero imagino que no. No quiero entrar en polémicas de cual es peor o mejor, simplemente quiero que se tengan en cuenta para no pedirles peras al olmo. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 03-10-2008 a las 22:26:53. Razón: completar info |
#35
|
||||
|
||||
No tiene nada que ver si el lenguaje es interpretado,o compilado amigo Lepe,
chekea este link y este otro y veras unos ejemplos de Template en C++, sabiendo que c++ puede ser compilado tambien.Lo de java solo lo ponia por ejemplo. Lo menos que quiero es hacer una polemica que Java es mejor o Delphi o C++ o Python, o Ruby, etc. Eso seria para el foro de Debate. Eso es lo interesante de hacerlo con Template puedes verlo ahi. Saludos......
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
|
#36
|
||||
|
||||
Por eso quise que me explicaras a qué le llamabas "Templates".
En delphi usamos el code Template, si te fijas en esa URL, la ventana que pone con ejemplos se llama "Templates", pero obviamente, no tiene nada que ver con lo que quieres. Otra cosa, que quizás te sirve, es trabajar con referencias de clases, es decir, haces una clase general, que admita operar con el tipo de clase que le definas en tiempo de ejecución:
Y hasta aquí, llego Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#37
|
|||
|
|||
Hola...
Cita:
Ahora, los que estamos acostumbrados a trabajar en Delphi (Pascal, Object Pascal), no nos afecta el que existan o no. Que serían una gran ayuda, es cierto, pero hemos vivido mucho tiempo sin ellos y siempre hemos podido con el trabajo... Ahora, parece que Delphi 2009 si soporta Genéricos: http://barrkel.blogspot.com/2008/08/...anonymous.html Saludos... |
#38
|
||||
|
||||
Cita:
// Saludos |
#40
|
||||
|
||||
Solo para complementar un poco el tema ya que me tope con la misma situacion, les dejo aca un link a un video donde dan una introduccion al tema.
Link Video Saludos |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Lista Dinamica en Java | Alejo | JAVA | 1 | 17-01-2005 12:48:41 |
Como hacer una lista de temas.... | Delphius | Varios | 16 | 16-11-2004 20:37:56 |
lista dinamica | Telemaco | PHP | 6 | 19-08-2004 23:20:33 |
lo que necesito es ayuda en el TDA de una lista doblemente enlazada circular | program_tda | Varios | 12 | 17-02-2004 08:45:35 |
|