Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Gráficos (https://www.clubdelphi.com/foros/forumdisplay.php?f=8)
-   -   Modificar color de selección, en componentes (https://www.clubdelphi.com/foros/showthread.php?t=60856)

Cannabis 16-10-2008 03:35:00

Modificar color de selección, en componentes
 
Utilizo Delphi 7.

El problema que tengo es modificar el color predeterminado de windows (azul, verde o gris) en componentes como TComboBox o un TEdit con texto seleccionado.

¿Es posible cambiar el color?

Gracias por su ayuda.


Salud.

Edito: Olvida decir que ya encontré cómo hacerlo componente por componente. Lo que quiero ahora es hacerlo con un comando que afecte a todos los componentes de la aplicación. Gracias de nuevo.

amezeta32 16-10-2008 08:15:09

Saludos!!

Claro.

Por ejemplo

ComboBox1.Color:=clWindow

amezeta32 16-10-2008 08:20:12

Saludos!!

¿Con componente por componente te refieres a que recorres la propiedad Components y configuras el color de cada elemento?

La única que se me ocurre es configurar el ParentColor de cada componente
que quieras configurar y luego desde la forma poner el color pero no se si sea eso lo que quieras.

Neftali [Germán.Estévez] 16-10-2008 08:55:52

Puedes utilizar RTTI.
En la sección de Tips de mi página, hay uno titulado: "Modificar propiedades de controles en ejecución utilizando RTTI", creo que te puede ser útil.

coso 16-10-2008 09:40:32

Hola,
Neftalí, ví tu codigo (hice un componente para leer scripts en tiempo real y investigando encontre tu pagina :D ) y encontre algunas funciones que lo simplificarian : has visto el metodo typinfo.PropType(object,string)? De igual manera, SetSetProp y SetEnumProp, que directamente te pone, por ejemplo, dbgrid.options = [dgIndicator,dgRowSelect], sin tener que parsearlo antes.Tampoco es necesario parsear 'false','true' (como mucho sacarle los espacios). saludos.

Neftali [Germán.Estévez] 16-10-2008 11:47:15

Gracias por la información.

Cannabis 16-10-2008 17:08:22

Gracias a todos por sus respuestas.

TEdit.Color:= clRed cambiaría el color de fondo del componente pero no el color de selección.

Al cambiar la propiedad Color en un TEdit todo el fondo del componente cambia de color, pero cuando el componente obtenga el foco, el texto tendría color azul y el resto del componente color rojo.

Ese color de selección es el que quiero modificar.

Gracias de nuevo.


Salud.

Edito:

Neftalí, el truco que me recomiendas de tu página me ha servido, pero para otro problema. Gracias.


La franja horaria es GMT +2. Ahora son las 20:58:38.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi