Una forma curiosa de extender un control que no conocía - Versión para impresión +- Comunidad Gambas-es (https://gambas-es.org) +-- Foro: Gambas (https://gambas-es.org/forum-3.html) +--- Foro: Controles/Librerías/Componentes (https://gambas-es.org/forum-7.html) +--- Tema: Una forma curiosa de extender un control que no conocía (/thread-1431.html) |
Una forma curiosa de extender un control que no conocía - Harpo - 02-07-2023 Saludos al foro, Buscando en el código del IDE cómo implementa una funcionalidad me encontré una clase con el mismo nombre que un control: TabPanel. Dentro no había un "inherits", solo una serie de funciones que luego se usan en el TabPanel interno del Workspace. No conocía esa manera de añadir funcionalidad a un control y me ha picado la curiosidad. He creado un nuevo proyecto, he añadido una clase TextBox, dentro he creado una función "Digits" que devuelve la cantidad de números en el texto del control y todos los TextBox del proyecto tienen un nuevo método Digits. Y funciona. Supongo que ya conocen esta posibilidad, para mi ha sido todo un descubrimiento. Un saludo, Harpo. RE: Una forma curiosa de extender un control que no conocía - Shordi - 02-07-2023 Pues no lo conocía. Gracias por el apunte. Saludos RE: Una forma curiosa de extender un control que no conocía - Shell - 03-07-2023 Parece que hay solo dos clases en el código fuente que usan esta forma. TabPanel y TextEditor, ambas no heredan. Se encuentran en el directorio Exported de las fuentes de Gambas. El resto de las clases en ese directorio heredan de UserControl. Siempre lo había visto en vuestros proyectos ( los que os animáis a crear controles) con herencia. Saludos RE: Una forma curiosa de extender un control que no conocía - Harpo - 04-07-2023 Solo me había fijado en TabPanel, buscaba cómo implementa el IDE el botón para mostrar las carpetas de un proyecto dentro del Workspace. Soy de los que usan muchos controles personalizados, como Shordi intento cambiar la estética de mis programas, y en todos he usado herencia o los he recodificado partiendo de los fuentes. Por eso me sorprendió esta manera de extender un control, puede dar mucho juego con menos complicaciones. Un saludo, Harpo. |