https://foro.gambas-es.org/viewtopic.php?f=1&t=3986
-----------------------------------
jorssoftware
Domingo, 20 Julio 2014, 07:56

Como Hago Para Crear Un Label Con Fondo De Gradiente
-----------------------------------
Como creo un fondo de un label de gradiente

necesito una ayuda

deseo colocar el nombre de mi aplicacion  con un label en el formulario

normalmente uno coloca el label busca las propiedades de text para colocar el nombre y backgraund para el color de fondo
la idea es que el label en ves de tener un solo color de fondo tenga un gradiente de fondo 

ejemplo supongamos que deseo que mi label tenga un gradiente de color CYAN con BLANCO y letras amarillas
            como lo hago 


aqui pongo un codigo para que tengan una idea 

  Static Function Gradient(red As Integer, blue As Integer[, 0 As Float]
  

End
Public Sub Label12_MouseDown()
Label12.Background = Color.Gradient
  End
Public Sub Form_Open()

   

End

la idea es aprender como se usa la funcion gradiente en un label o otro objeto

gracias quien me pueda ayudar


-----------------------------------
jsbsan
Domingo, 20 Julio 2014, 11:50

Re: Como Hago Para Crear Un Label Con Fondo De Gradiente
-----------------------------------
jorssoftware:

[quote]la idea es que el label en ves de tener un solo color de fondo tenga un gradiente de fondo [/quote]
He estado leyendola documentacion de la funcion gradient:

[url=http://gambasdoc.org/help/comp/gb.image/color/gradient?es&v3]http://gambasdoc.org/help/comp/gb.image/color/gradient?es&v3

Lo que comenta la documentacion  es que esta función devuelve un solo color que es la media entre los dos colores que les des. Por lo tanto no hace el efecto que quieres hacer.

Creo que la solución pudiera ser usar un drawingArea, y alli dibujar lineas o rectangulos rellenos con distintos colores, y asi dar el efecto de gradiente que quieres.

Saludos


-----------------------------------
jguardon
Domingo, 20 Julio 2014, 12:11

Re: Como Hago Para Crear Un Label Con Fondo De Gradiente
-----------------------------------
Un control personalizado "gradientLabel" basado en un drawingarea es muy sencillo de hacer...

Saludos


-----------------------------------
Shell
Domingo, 20 Julio 2014, 13:26

Re: Como Hago Para Crear Un Label Con Fondo De Gradiente
-----------------------------------
Hola!.

El problema que veo cuando dibujamos las letras en un control DrawingArea es el centrado o ajuste de la fuente.
Controlar el tamaño de la fuente, pensando que es un cuadrado y que siempre el cero comienza por la esquina superior
izquierda.

Primero sobre todo hay que dominar como debe quedar la letra en el DrawingArea. :-)
Y luego ya hablaremos de degradado. Seguro que es fácil, pero hay que tener algo de practica para dominar donde queremos que
nuestra letra o palabra aparezca en el DrawingArea y no se salga por los lados por ejemplo.  ;-)

Podemos comenzar de dos maneras, con un rectángulo y ver como es un degradado o comenzar con dibujar letras.
Y lo mas importante si podemos hacerlo con una brocha o dibujando directamente una letra usando un método exclusivo. 
Una de las cuestiones, podría ser,¿ podemos dibujar una letra igual que un cuadrado ?,¿ podemos usar una brocha ?...etc,etc.

Saludos


-----------------------------------
Shell
Domingo, 20 Julio 2014, 13:41

Re: Como Hago Para Crear Un Label Con Fondo De Gradiente
-----------------------------------
Podemos comenzar jugando con este ejemplo. Que seguro que le queda muchas cosas.
Fijaros en posición de la rejilla y la letra.

En este caso he usado una función para dibujar una letra y he añadido centrado.

 [img]http://foro.gambas-es.org/files/images/768/letra_rejilla.png[/img]

Saludos


