Cambiar color de un dbEdit o un TEdit en enabled := false
#1
Escrito 30 abril 2011 - 04:14
Otra de novato:
¿Hay alguna forma de cambiar el color de fondo y de texto de un DBEdit o de un TEdit que estan en enabled := False?
He buscado y no encuentro la forma de hacerlo
Salut
Marc Miralles
#2
Escrito 30 abril 2011 - 06:54
Puedes jugar con las propiedades Parent..... a ver si logras algún cambio.
Salud OS
Archivos adjuntos
#3
Escrito 30 abril 2011 - 02:08
En delphi el color de fondo no cambia, el color del texto si, pero eso es un tanto lógico, ¿ como podrías identificar que un componente está habilitado o no a simple vista ?
Puedes jugar con las propiedades Parent..... a ver si logras algún cambio.
Salud OS
Pues parece ser que Lazarus se comporta distinto, ya que haga lo que haga el color de fondo y el de texto aparecen en gris, snif, snif
Archivos adjuntos
#4
Escrito 30 abril 2011 - 02:44
En caso de que no puedas conseguir que la deshabilitación de un control se comporte como necesitas, puedes optar por buscar una alternativa, es decir cambiar algunas propiedades para conseguir que se comporte igual que un control deshabilitado.
Por ejemplo, si queremos que los controles bloqueados queden en color amarillo :
TEdit1.ReadOnly := True; // El usuario no puede modificar su contenido
TEdit1.TabStop := False; // El control no recibirá el Foco al moverte entre controles
TEdit1.Color := clYellow;
NOTA: Es muy bonita la pantalla de muestra, felicidades, se ve un proyecto muy interesante.
Salutacions
#5
Escrito 30 abril 2011 - 11:44
procedure TForm1.Button1Click(Sender: TObject); begin Edit1.ParentColor:=false; Edit1.color:=clYellow; end;
lo unico que se me ocurre es que la propiedad parentcolor del edit la tengas en true, por eso te lo puse en false en el codigo del boton.
prueba, porque a mi me funciona bien el cambio del color de fondo, ya luego veremos que hacer con lo del color de la letra.
#6
Escrito 01 mayo 2011 - 09:29
Hola Marc.
En caso de que no puedas conseguir que la deshabilitación de un control se comporte como necesitas, puedes optar por buscar una alternativa, es decir cambiar algunas propiedades para conseguir que se comporte igual que un control deshabilitado.
Por ejemplo, si queremos que los controles bloqueados queden en color amarillo :
TEdit1.ReadOnly := True; // El usuario no puede modificar su contenido
TEdit1.TabStop := False; // El control no recibirá el Foco al moverte entre controles
TEdit1.Color := clYellow;
Gracias Marc, probaré esto que me dices, no sabía lo del TabStop, lo cual parece interesante.
NOTA: Es muy bonita la pantalla de muestra, felicidades, se ve un proyecto muy interesante.
Gracias Marc, siempre es agradable que otro haga un comentario favorable del trabajo de uno. Universe será un software de gestión médica (Alopática y natural) gratuito y con un mantenimiento mensual opcional muy económico. Esperemos que guste a la gente y que el trabajo hecho y el montón de veces que pregunto y pregunto sirvan para algo, jeje.
Salut
Marc Miralles
#7
Escrito 01 mayo 2011 - 09:35
Cuando lo termines no dudes en publicarlo, será una gran satisfacción ver un producto terminado de uno de los miembros de ésta comunidad.
Salud OS
#8
Escrito 01 mayo 2011 - 09:40
Pues lo del font, en la prueba rapida que hice no funciona, pero el fondo cambia sin importar si esta enable en false.
procedure TForm1.Button1Click(Sender: TObject); begin Edit1.ParentColor:=false; Edit1.color:=clYellow; end;
Gracias Luk2009 luego lo pruebo y comento
Salut
Marc Miralles
#9
Escrito 01 mayo 2011 - 04:20
Pues lo del font, en la prueba rapida que hice no funciona, pero el fondo cambia sin importar si esta enable en false.
delphi
procedure TForm1.Button1Click(Sender: TObject); begin Edit1.ParentColor:=false; Edit1.color:=clYellow; end;
lo unico que se me ocurre es que la propiedad parentcolor del edit la tengas en true, por eso te lo puse en false en el codigo del boton.
prueba, porque a mi me funciona bien el cambio del color de fondo, ya luego veremos que hacer con lo del color de la letra.
Pues Na de Na, he añadido un botón con el código al formulario para probar, y no se porqué, pero no le hace ni cosquillas.
La opción que dice Marc de trabajar en modo ReadOnly = True tampoco tiene mala pinta, lo que quería era impedir la entrada al control, bien por teclado bien por ratón. Por eso el poner la propiedad Enable a False, sin embargo no me gusta que quede en gris ya que se trata de información económica importante y se debe ver bien. Otra cosa sería tener el fondo gris, pero poder poner el texto por ejemplo en rojo, ya que se ve claro que no se puede editar mientras que el texto le es bien visible al usuario que no es un informático. Soy un poco maniático con estas cosas pero estas 'menudencias' hasta hoy me han dado buenos resultados. En fin, como dice el dicho, cada maestrillo tiene su librillo, así que tendré que buscar la forma de conseguir el resultado deseado, aunque sea a base de rascar código. jejejjjjjjjjjjjjjjgggggggllllll.
#10
Escrito 01 mayo 2011 - 04:27
Hola Marc.
En caso de que no puedas conseguir que la deshabilitación de un control se comporte como necesitas, puedes optar por buscar una alternativa, es decir cambiar algunas propiedades para conseguir que se comporte igual que un control deshabilitado.
Por ejemplo, si queremos que los controles bloqueados queden en color amarillo :
TEdit1.ReadOnly := True; // El usuario no puede modificar su contenido
TEdit1.TabStop := False; // El control no recibirá el Foco al moverte entre controles
TEdit1.Color := clYellow;
Gracias Marc, ésta solución se parece bastante a lo que busco, ahora solo falta impedir que puedan entrar con el Ratón. Si no se puede editar el campo, ¿que sentido tiene en este caso poder entrar en él con el ratón?
Salut
Marc
#11
Escrito 01 mayo 2011 - 04:32
Me uno a lo dicho por Marc, tiene muy buena pinta tu software, seguro que a muchos les será de valiosa ayuda. Sólo espero que tengan a bien adquirir el mantenimiento anual.
Cuando lo termines no dudes en publicarlo, será una gran satisfacción ver un producto terminado de uno de los miembros de ésta comunidad.
Salud OS
Gracias una vez más. Al final me voy a poner rojo ja,ja,ja. En cuanto esté un poco Estable lo subiré a la web para que se pueda descargar y probar y os lo hago saber, el proyecto hecho en Lazarus no sería posible o muy difícil sin vuestra ayuda. Es genial ver que en el mundo hay gente que ayuda a los demás porqué cree que es lo que hay que hacer. GRACIAS.
#12
Escrito 01 mayo 2011 - 05:37
Si no se puede editar el campo, ¿que sentido tiene en este caso poder entrar en él con el ratón?
Para que el usuario pueda copiar al portapapeles el contenido del control y luego pegarlo en otro lugar si necesitara.
Saludos
#13
Escrito 02 mayo 2011 - 02:23
Si no se puede editar el campo, ¿que sentido tiene en este caso poder entrar en él con el ratón?
Para que el usuario pueda copiar al portapapeles el contenido del control y luego pegarlo en otro lugar si necesitara.
Saludos
Ja,ja,ja. Me has pillado Wilson. ¿y si cambiamos el nombre de la propiedad a Readonly&Copy? JAJAJAJA! Aunque ahora en serio, si se trata de un campo de tipo texto tiene sentido el copiar y pegar, pero de un valor monetario (124,87€) P.e., no se lo veo tan claro, ya que un usuario de a pie tardará más en hacer copiar y pegar que en escribir el valor en otro campo desde el teclado numérico, a no ser que se trate de cantidades astronómicas. Aunque tu apreciación es genial para los campos de texto.
Saludos
Marc Miralles
#14
Escrito 11 mayo 2011 - 11:33
Me uno a lo dicho por Marc, tiene muy buena pinta tu software, seguro que a muchos les será de valiosa ayuda. Sólo espero que tengan a bien adquirir el mantenimiento anual.
Cuando lo termines no dudes en publicarlo, será una gran satisfacción ver un producto terminado de uno de los miembros de ésta comunidad.
Salud OS
Pues lo dicho; Aún no está disponible, pero aquí tenéis un link de la idea donde estará lo antes posible el programa y sus fuentes.
La web está también en fase Alpha. (Todo hecho desde linux con software libre, lo cual me dá algún que otro quebradero de cabeza ), espero poderla mejorar bastante estos próximos días.
http://www.softwareterapeutico.com
Me gustaría conocer vuestra opinión, de antemano. Gracias.
#15
Escrito 11 mayo 2011 - 11:59
Me gustaría conocer vuestra opinión, de antemano. Gracias.
Muy interesante, lo que te ofrezco es darle la publicidad al alcance de DelphiAccess, es decir, colocarlo en el portal y sus redes sociales y por supuesto de forma individual haré una publicación en mi bitácora
Salud OS
#16
Escrito 11 mayo 2011 - 12:04
Me gustaría conocer vuestra opinión, de antemano. Gracias.
Muy interesante, lo que te ofrezco es darle la publicidad al alcance de DelphiAccess, es decir, colocarlo en el portal y sus redes sociales y por supuesto de forma individual haré una publicación en mi bitácora
Salud OS
¡¡¡UAU!!!! ¡¡¡Genial, no esperaba esto!! por supuesto será un honor (y una responsabilidad) poder estar en el portal y en las redes sociales de DelphiAccess.
Gracias.
Marc Miralles
#17
Escrito 11 mayo 2011 - 12:08
Me gustaría conocer vuestra opinión, de antemano. Gracias.
Muy interesante, lo que te ofrezco es darle la publicidad al alcance de DelphiAccess, es decir, colocarlo en el portal y sus redes sociales y por supuesto de forma individual haré una publicación en mi bitácora
Salud OS
¡¡¡UAU!!!! ¡¡¡Genial, no esperaba esto!! por supuesto será un honor (y una responsabilidad) poder estar en el portal y en las redes sociales de DelphiAccess.
Gracias.
Marc Miralles
Perfecto, ¡¡¡cerrado!!!, sólo dinos cuando esté disponible para publicarlo.
Salud OS
#18
Escrito 11 mayo 2011 - 08:30