Cómo dar formato al texto en controles de edición enriquecida

Una aplicación puede enviar mensajes a un control de edición enriquecido para dar formato a caracteres y párrafos y recuperar información de formato. Los atributos de formato de párrafo incluyen alineación, tabulaciones, sangrías, numeración y tablas simples. En el caso de los caracteres, puede especificar el nombre de fuente, el tamaño, el color y los efectos, como negrita, cursiva y protegido.

Lo que necesita saber

Tecnologías

Requisitos previos

  • C/C++
  • Programación de la interfaz de usuario de Windows

Instrucciones

Dar formato al texto en un control de edición enriquecida

Puede aplicar formato de párrafo mediante el mensaje EM_SETPARAFORMAT . Para determinar el formato de párrafo actual para el texto seleccionado, use el mensaje EM_GETPARAFORMAT . La estructura PARAFORMAT o PARAFORMAT2 se usa con ambos mensajes para especificar atributos de formato de párrafo.

Puede aplicar formato de caracteres mediante el mensaje EM_SETCHARFORMAT . Para determinar el formato de caracteres actual para el texto seleccionado, puede usar el mensaje EM_GETCHARFORMAT . La estructura CHARFORMAT o CHARFORMAT2 se usa con ambos mensajes para especificar atributos de carácter.

También puede usar EM_SETCHARFORMAT y EM_GETCHARFORMAT mensajes para establecer y recuperar el formato de caracteres del punto de inserción, que es el formato que se aplica a los caracteres insertados posteriormente. Por ejemplo, si una aplicación establece el formato de carácter predeterminado en negrita y, después, el usuario escribe un carácter, ese carácter estará en negrita.

El formato de caracteres del punto de inserción se aplica al texto recién insertado solo si la selección actual está vacía (si la selección actual es un punto de inserción). De lo contrario, el nuevo texto asume el formato de caracteres del texto que reemplaza. Si cambia la selección, el formato de caracteres predeterminado cambia para que coincida con el primer carácter de la nueva selección.

El efecto de carácter protegido es único en que no cambia la apariencia del texto. Si el usuario intenta modificar el texto protegido, un control de edición enriquecido envía a su ventana primaria un código de notificación de EN_PROTECTED , lo que permite que la ventana principal permita o impida el cambio. Para recibir este código de notificación, debe habilitarlo mediante el EM_SETEVENTMASK mensaje.

El color de primer plano siempre es un atributo de carácter. En Microsoft Rich Edit 1.0, el color de fondo es solo una propiedad del control de edición enriquecido. Para establecer el color de fondo predeterminado, use el mensaje EM_SETBKGNDCOLOR . Tenga en cuenta que Rich Edit no admite el mensaje de WM_CTLCOLOREDIT .

Usar controles de edición enriquecida

Demostración de controles comunes de Windows (CppWindowsCommonControls)