Hola!.

Estoy haciendo una rejilla y cada una de sus celdas la relleno con un color.
En esta rejilla en un juego que estoy pensando en hacer, tendrá varias posibilidades
de colores, cada color tendrá un significado.

Ahora se me queda un poco grande, el juego.Se me ocurren cosas y luego mas ampliaciones y pierdo el hilo
constantemente, es que gambas da mucho juego.Me quejo siempre del tiempo que tengo para disfrutar con gambas.
Lo quiero llevar todo por delante y es que no doy abasto. Y es que se podrían hacer tantas cosas.

Pues bien, volvamos a los colores.
Cuando establezco un color, lo hacemos con una constante, o usando la funcion color.RGB(rojo,verde,azul...)
Valores enteros.

Imaginar que yo tengo cuatro colores.
color1,color2...color4

Y estos los defino así:

DIM color1 as Color
..
DIM color2 as Color


Je, no es la forma tradicional, pero es que un color.
Si yo hago esto:
Dim colorverde As Color

colorverde = Color.Green


¿ Por que me debe dar error ?. Me pide un color y le doy un entero.
¿ No es Color.Green una constante ?. Es un entero.
¿ No es colorverde una variable del tipo Color ? Es un entero.No,es un objeto de la clase Color,me quedo a cuadros.

colorverde es un objeto de la clase color. Entonces,¿ no puedo tener una variable del tipo color ?

Otro ejemplo:

Public Sub Pizarra_MouseDown()
Dim celdaposx As Integer
Dim celdaposy As Integer
Dim uncolor As ColorInfo

celdaposx = Int(Mouse.X / tamcelda)
celdaposy = Int(Mouse.Y / tamcelda)
uncolor = Color[aentcolores[celdaposx, celdaposy]]

lblRojo.Text = uncolor.Red
lblVerde.Text = uncolor.Green
lblAzul.Text = uncolor.Blue
PicColor.Background = Color.RGB(uncolor.Red, uncolor.Green, uncolor.Blue)

End

Aqui he usado ColorInfo, no color.El objeto uncolor mantiene los valores o propiedades de los valores rojo,verde,azul en enteros que existe
en una celda de la rejilla que controlo con un array que antes he llenado con color.rgb

Private aentcolores As New Integer[16, 16]


Se de sobra que puedo usar enteros. También podía haber dicho esto:
Dim colorverde As Integer

colorverde = Color.Green


Entonces, el tipo color, ¿ cuando lo usamos ?

Se que la pregunta puede resultar rara. Es que si tomamos literalmente color como lo que es, amarillo, verde,azul.
Puede confundir, son cosas que he visto en Visual Basic y me lío.

Preguntar si no entendisteis esto.

Saludos