La Web del Programador: Comunidad de Programadores
 
    Pregunta:  1732 - CAMBIO DE SELECCION NO VISIBLE
Autor:  Climent Cànaves Penya
Quiero hacer un editor que cambie de color la letra segun la palabra que escribo (como el editor de Delphi).
La única manera que se me ha ocurrido es usar el evento OnChange del editor para cambiar el tipo de letra. El problema es que debo canviar la selección bastantes veces, lo que resulta en un desagradable parpadeo. ¿Alguien sabe como evitar esto o otra forma de canviar la letra?

  Respuesta:  mitotech
Te recomiendo que uses el componente TRichEdit, el cual te permite darle bastantes tipos de atributos al texto que estas escribiendo. Con respecto al parpadeo lo puedes evitar bastante usando RichEdit1.lines.BeginUpdate, modificando colores usando
RichEdit1.SelAttributes.Color := clRed por ejemplo y finalizando la edición con RichEdit1.lines.EndUpdate.

De todas maneras debes controlar los eventos keydown y keyup para actualizar el color del texto cuando hallas dejado de editar el texto.
Espero que te sirva el consejo.