|
Página 1 de 2
|
[SOLUCIONADO] Buscar Los Colores Del Sistema
Autor |
Mensaje |
Grandamakulo
Analista Programador
Registrado: Enero 2016
Mensajes: 311
Edad: 55 Ubicación: En un lugar de La Mancha de cuyo nombre me acuerdo perfectamente...
|
[SOLUCIONADO] Buscar Los Colores Del Sistema
Hola, compañeros:
Estoy con una aplicación en la que se seleccionan colores a partir de un archivo, con un ColorChooser y, lo que me importa, colores del sistema.
Estoy buscando una solución más «elegante» que la que he encontrado. Se trataría de recorrer de alguna manera las propiedades estáticas y las constantes de Color. De momento, mi solución es ésta, pero seguro que vosotros conocéis alguna manera más lógica:
Private Sub Carga_Sistema()
Dim strAlfa As New String[]
Dim i As Integer
strAlfa.Add("Background")
strAlfa.Add("ButtonBackground")
strAlfa.Add("ButtonForeground")
strAlfa.Add("Foreground")
strAlfa.Add("LightBackground")
strAlfa.Add("LightForeground")
strAlfa.Add("LinkForeground")
strAlfa.Add("SelectedBackground")
strAlfa.Add("SelectedForeground")
strAlfa.Add("TextBackground")
strAlfa.Add("TextForeground")
strAlfa.Add("TooltipBackground")
strAlfa.Add("TooltipForeground")
strAlfa.Add("VisitedForeground")
strAlfa.Add("Black")
strAlfa.Add("Blue")
strAlfa.Add("Cyan")
strAlfa.Add("DarkBlue")
strAlfa.Add("DarkCyan")
strAlfa.Add("DarkGray")
strAlfa.Add("DarkGreen")
strAlfa.Add("DarkMagenta")
strAlfa.Add("DarkRed")
strAlfa.Add("DarkYellow")
strAlfa.Add("Default")
strAlfa.Add("Gray")
strAlfa.Add("Green")
strAlfa.Add("LightGray")
strAlfa.Add("Magenta")
strAlfa.Add("Orange")
strAlfa.Add("Pink")
strAlfa.Add("Red")
strAlfa.Add("Transparent")
strAlfa.Add("Violet")
strAlfa.Add("White")
strAlfa.Add("Yellow")
grdSistema.Rows.Count = strAlfa.Count
grdSistema.Columns.Count = 2
grdSistema.Padding = 0
For i = 0 To strAlfa.Max
grdSistema.Row = i
grdSistema.Column = 0
grdSistema.Current.Background = Eval("Color." & strAlfa[i])
grdSistema.Column = 1
grdSistema.Current.Text = strAlfa[i]
Next
grdSistema.Row = 0
End
La aplicación tiene un GridView en el que la columna cero es la que tiene el color de fondo del color correspondiente y la columna uno el nombre. El Gridview se llama grdSistema. —Sí, usaré un «with» cuando esté funcional.—
Gracias de antemano
última edición por Grandamakulo el Jueves, 29 Agosto 2019, 19:39; editado 1 vez
|
#1 Miercoles, 28 Agosto 2019, 22:28 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Buscar Los Colores Del Sistema
Estoy buscando una solución más «elegante» que la que he encontrado.
Siendo valores constantes de tipo String, yo preferiría un array instanciado explícitamente:
Private strAlfa As String[] = ["Background", "ButtonBackground", "ButtonForeground", "Foreground", "LightBackground",
"LightForeground", "LinkForeground", "SelectedBackground", "SelectedForeground",
"TextBackground", "TextForeground", "TooltipBackground", "TooltipForeground",
"VisitedForeground", "Black", "Blue", "Cyan", "DarkBlue", "DarkCyan", "DarkGray",
"DarkGreen", "DarkMagenta", "DarkRed", "DarkYellow", "Default", "Gray", "Green",
"LightGray", "Magenta", "Orange", "Pink", "Red", "Transparent", "Violet", "White", "Yellow"]
Private Sub Carga_Sistema()
......
......
última edición por vuott el Jueves, 29 Agosto 2019, 00:08; editado 6 veces
|
#2 Jueves, 29 Agosto 2019, 00:01 |
|
|
Shell
Analista Programador
Registrado: Marzo 2010
Mensajes: 5278
Edad: 53 Ubicación: Al otro lado de la pantalla
|
Re: Buscar Los Colores Del Sistema
Otra posibilidad puedes distribuir los valores del array y luego añadir saltos por valores.
Private strAlfa As String[] = [
"Background",
"ButtonBackground",
"ButtonForeground",
"Foreground",
"LightBackground",
"LightForeground",
"LinkForeground",
"SelectedBackground",
"SelectedForeground",
"TextBackground",
"TextForeground",
"TooltipBackground",
"TooltipForeground",
"VisitedForeground",
"Black",
"Blue",
"Cyan",
"DarkBlue",
"DarkCyan",
"DarkGray",
"DarkGreen",
"DarkMagenta",
"DarkRed",
"DarkYellow",
"Default",
"Gray",
"Green",
"LightGray",
"Magenta",
"Orange",
"Pink",
"Red",
"Transparent",
"Violet",
"White",
"Yellow"]
....
Saludos
=================== Gambas Básico
"No es un bug, es una característica no documentada"
|
#3 Jueves, 29 Agosto 2019, 00:22 |
|
|
Grandamakulo
Analista Programador
Registrado: Enero 2016
Mensajes: 311
Edad: 55 Ubicación: En un lugar de La Mancha de cuyo nombre me acuerdo perfectamente...
|
Re: Buscar Los Colores Del Sistema
Muchísimas gracias a ambos. Efectivamente, se me había pasado sacar la carga de valores de la rutina para que no se repita cada vez (además de la sencillez, claro).
Pero mi duda es si hay alguna manera, tipo For...Each o similar para buscar las propiedades estáticas y las constantes de Color y no tener que escribirlas explícitamente.
Es que me explico fatal , pero creo que ahora puede haber quedado algo más claro.
Reitero mi agradecimiento.
última edición por Grandamakulo el Jueves, 29 Agosto 2019, 07:34; editado 1 vez
|
#4 Jueves, 29 Agosto 2019, 07:32 |
|
|
Shell
Analista Programador
Registrado: Marzo 2010
Mensajes: 5278
Edad: 53 Ubicación: Al otro lado de la pantalla
|
Re: Buscar Los Colores Del Sistema
Puede que una solución posible sea entender el tipo Clase.
A ver si encontramos algo por la comunidad.
Saludos
=================== Gambas Básico
"No es un bug, es una característica no documentada"
|
#5 Jueves, 29 Agosto 2019, 13:57 |
|
|
Shell
Analista Programador
Registrado: Marzo 2010
Mensajes: 5278
Edad: 53 Ubicación: Al otro lado de la pantalla
|
Re: Buscar Los Colores Del Sistema
Comenzamos con esto:
Mirar todos los símbolos. Si es de un tipo determinado podemos pasarlo al grupo de colores, un array.
Saludos
=================== Gambas Básico
"No es un bug, es una característica no documentada"
última edición por Shell el Jueves, 29 Agosto 2019, 14:15; editado 1 vez
|
#6 Jueves, 29 Agosto 2019, 14:13 |
|
|
gambafeliz
Analista Programador
Registrado: Julio 2019
Mensajes: 830
Edad: 54
|
Re: Buscar Los Colores Del Sistema
Comenzamos con esto:
Mirar todos los símbolos. Si es de un tipo determinado podemos pasarlo al grupo de colores, un array.
Saludos
Interesantes !!!!
|
#7 Jueves, 29 Agosto 2019, 14:39 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Buscar Los Colores Del Sistema
|
#8 Jueves, 29 Agosto 2019, 14:57 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Buscar Los Colores Del Sistema
...y además yo querría señalar este archivo de sistema:
/etc/X11/rgb.txt
última edición por vuott el Jueves, 29 Agosto 2019, 15:12; editado 1 vez
|
#9 Jueves, 29 Agosto 2019, 15:11 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Buscar Los Colores Del Sistema
...y además yo querría señalar este archivo de sistema:
/etc/X11/rgb.txt
Brutal, joven padawan. Los caminos de la fuerza recorrer tú sabes.
+1
=================== No podemos regresar
|
#10 Jueves, 29 Agosto 2019, 17:14 |
|
|
|
Temas parecidos
Temas parecidos
|
Página 1 de 2
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado Usuarios registrados conectados: Ninguno
|
No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas No puede adjuntar archivos Puede descargar archivos No puede publicar eventos en el calendario
|
|
|
|
|