¡No se preocupe por sus libros antiguos! Desde v3, Delphi no ha cambiado mucho. Esta es la razón por la cual la mayoría de los programas compilados con D3 aún compila en D7 o incluso versiones más nuevas. Y si no se compila, probablemente necesite cambiar una o dos líneas, aquí y luego.
Le recomendaría buscar otros componentes MUY simples en Internet y ver cómo están hechos. Luego haz el tuyo y publícalo aquí. Deje que otros lo miren y sugieran mejoras o detecten errores.
Sobre el diseño de tu control:
1) tal vez usted no necesita esas dos etiquetas. Puedes pintar el texto directamente en la imagen. Si tiene muchos de esos componentes como dice, puede ahorrar un poco de memoria.
2) NO querrá tener muchas y muchas y muchas imágenes cargadas en una sola forma. La sobrecarga puede ser significativa. Lo que puede hacer es cargar las imágenes SOLAMENTE en imágenes visibles en la pantalla, y colocará en la pantalla SÓLO 5-10 imágenes (o cualquier cantidad de imágenes que pueda mostrar en el formulario sin salir de la pantalla). A medida que el usuario se desplaza hacia abajo, mantiene los mismos controles de TImage en la pantalla, pero carga nuevas (próximas) imágenes en ellos.
3) Es posible que no desee almacenar etiquetas y TImage en una matriz (supongo que es un TImage porque parece que desea mostrarlos en la pantalla, de lo contrario no necesitará etiquetas; debe explicar su problema en más detalles si lo entendí mal). Pero puede almacenar un TBitmap y el texto (que desea mostrar en las etiquetas) en su lugar.
Por lo tanto, es posible que necesite calcular la cantidad de CPU/sobrecarga de disco que crearán sus cientos de controles y la cantidad de memoria que necesitan. Si te mantienes bien por debajo de 1GB y el tiempo de carga es inferior a 10 segundos, entonces está relativamente bien. Si no es así, es posible que desee pensar en el diseño de su control antes de comenzar a implementarlo realmente.
Espero que haya sido útil. Nos vemos.
No siguió el enlace, pero ¿describe lo que hace mi respuesta? :-) –