TEdit y TLabel, cada letra de un color
Buenas de nuevo, os cuento.
Necesito tener un par de controles, un TEdit y un TLabel con un metodo donde yo pueda decirle que la letra numero X sera de color rojo, el resto negro. Un supuesto sera para resaltar la letra tonica dentro de una palabra. Por ejemplo:
en el caso de el Tedit
en el edt.onexit() haria eso edt.settonica(3) ; Alguien tiene alguna idea brillante? |
Hasta donde yo se lo unico que podrias usar es un RichEdit (de lo que viene de fabrica con delphi).
Otra alternativa (de la cual no tengo mucha experiencia) seria dibujar el texto con canvas. Aca hay un ejemplo: en StackOverflow Sino componentes de terceros |
Tal y como comenta Agustín, si deseas usar un Label con un método nuevo, deberás crear un nuevo componente y añadir las características que necesites.
Segúramenet sobrescribiendo el método paint:
La otra opción, para no "reinventar la rueda" es usar un TRickEdit, que ya posee todo lo necesarios para colorear el texto que hay en su interior.
|
Cita:
// Saludos |
Bueno, gracias de nuevo a todos. El metodo paint del TEdit no se puede sobreescribir ya que no lo implementa el componente para ello, deberia heredar mi nuevo componente desde mas arriba TCustomEdit o aun mas, no lo he mirado.
Bueno el caso es que no queria complicarme mucho y tampoco soy partidario de ir implementando componentes a diestro y siniestro asi que al final he hecho lo siguiente por si alguien lo necesita. Simplemente cuando me place llamo a este procedimiento que lo unico que hace es repintar encima poniendome en rojo la letra numero "idx".
|
Cita:
|
La franja horaria es GMT +2. Ahora son las 09:03:37. |
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