Si elegimos un control Texto estático, dado un valor hexadecimal del color (por ejemplo #D023AF), podemos en tiempo de ejecución cambiar el color de fondo asignando el siguiente estilo CSS:

QLabel {

    background-color: #D023AF;

}


Por lo tanto ya tenemos el elemento dinámico que necesitamos en tiempo de ejecución. El estilo CSS es una cadena de texto que podemos construir a partir del valor de un campo de color #COLOR_HEX en la tabla de colores y usar el siguiente comando de Velneo para aplicar el estilo a la etiqueta LBL_COLOR:

Interfaz: Establecer hoja de estilo CSS (LBL_COLOR, "QLabel { background-color: " + #COLOR_HEX + ";}"


Con este diseño solo necesitamos entonces una tabla con la lista de colores que va a usar la Aplicación y en tiempo de ejecución mostraremos los colores gráficamente aplicando el estilo CSS a un control Texto estático de Velneo.

Para el usuario final manejar valores hexadecimales de los colores no es muy práctico y por eso vamos a aprovechar la lista de nombres de color existente en la especificación CSS y a partir de esta lista crear nuevos colores con nuestros nombres personalizados. Se puede ver y descargar esa lista en https://www.w3schools.com/colors/colors_names.asp.

Ahora necesitamos mostrar la lista de nombres de color, el valor hexadecimal, el valor RBG y la imagen gráfica del color. Aquí tenemos un problema, la Rejilla de Velneo es poco dinámica y no podemos asignar un control personalizado a cada fila ni usar las condiciones de estilo por la rigidez del diseño.

Para solucionar esta limitación acudimos al control Casillero que nos permitirá usar un formulario con el control Texto estático y el CSS aplicado por cada color.


Ya tenemos todos los elementos, solo nos queda diseñar el Selector de color. El siguiente diseño muestra un formulario de selección que contiene un Alternador para mostrar dos casilleros, uno con todos los datos del color y otro mostrando solo los colores a modo de paleta.


Código del Ejercicio




Created with the Personal Edition of HelpNDoc: What is a Help Authoring tool?