https://foro.gambas-es.org/viewtopic.php?f=4&t=1826&p=10711#p10711
-----------------------------------
fabianfv
Viernes, 19 Agosto 2011, 21:51

Re: Componentes Y Controles De Usuario En Gambas
-----------------------------------
En Gambas también podés heredar de un control existente para añadirle características.

[code linenumbers=false syntax=gambas]
' Gambas class file
Inherits TextBox

. . .
[/code]

Pero al hacerlo así no podrías modificar la apariencia visual del control, ni tampoco algunos de sus comportamientos.

Sólo es lógico utilizar la herencia si el nuevo control también es básicamente un TextBox, aunque mejorado.

Por otra parte Gambas te permite crear un nuevo control por agregación de controles existentes. Para ello al iniciar el proyecto deberías marcar la opción "Programación de un componente". Los nuevos controles en Gambas se basan en los controles UserControl o UserContainer.

UserControl es el control base para crear un nuevo control (debés declarar tu nuevo control como una subclase de UserControl).

UserContainer es el control base para crear un nuevo control que actuará como contenedor de otros controles, como Form, Panel, HBox, etc (debés declarar tu nuevo control como una subclase de UserContainer).

Por supuesto también podés crear un control desde cero, controlando todas sus características, incluyendo la presentación gráfica. Esto lleva más trabajo pero el control es total. Para la representación visual del control deberías dibujar sobre un control DrawingArea. Básicamente debés crear el nuevo control como una subclase de UserControl o UserContainer y dicha clase deberá tener como uno de sus atributos un control DrawingArea.

En la wiki de Gambas tenés una guía como para comenzar (para Gambas3):

[url=http://gambasdoc.org/help/dev/gambas?v3]How To Program Components In Gambas


