CHARFORMAT2A结构(richedit.h)

包含有关富编辑控件中字符格式的信息。 CHARFORMAT2CHARFORMAT 结构的 Microsoft Rich Edit 2.0 扩展。 Microsoft Rich Edit 2.0 允许将任一结构与 EM_GETCHARFORMATEM_SETCHARFORMAT 消息一起使用。

语法

struct CHARFORMAT2A : _charformat {
  WORD     wWeight;
  SHORT    sSpacing;
  COLORREF crBackColor;
  LCID     lcid;
  union {
    DWORD dwReserved;
    DWORD dwCookie;
  };
  DWORD    dwReserved;
  SHORT    sStyle;
  WORD     wKerning;
  BYTE     bUnderlineType;
  BYTE     bAnimation;
  BYTE     bRevAuthor;
  BYTE     bUnderlineColor;
};

遗产

CHARFORMAT2A 结构实现_charformat。

成员

wWeight

类型:WORD

字体粗细。 此成员与 LOGFONT 结构的 lfWeight 成员相同。 若要使用此成员,请设置 dwMask 成员中的 CFM_WEIGHT 标志。

sSpacing

类型:SHORT

字母之间的水平间距(以 twips 为单位)。 此值对富编辑控件显示的文本没有影响;它包含在内,以便与 Windows TOM 接口兼容。 若要使用此成员,请设置 dwMask 成员中的 CFM_SPACING 标志。

crBackColor

类型:COLORREF

背景色。 若要使用此成员,请设置 dwMask 成员中的 CFM_BACKCOLOR 标志。 如果指定了 CFE_AUTOBACKCOLOR 字符效果,则忽略此成员。 若要生成,请使用巨集。

lcid

类型:LCID

一个 32 位区域设置标识符,该标识符包含下一个单词中的语言标识符,以及上一个单词中的排序标识符和保留值。 此成员对富编辑控件显示的文本没有影响,但拼写和语法检查器可以使用它来处理依赖于语言的问题。 可以使用宏创建 LCID 值。 若要使用此成员,请设置 dwMask 成员中的 CFM_LCID 标志。

dwReserved

类型:DWORD

保留;该值必须为零。

dwCookie

类型:DWORD

客户端 Cookie。 此成员对富编辑控件不透明。

sStyle

类型:SHORT

字符样式句柄。 此值对富编辑控件显示的文本没有影响;它包含在内,以便与 WindowsTOM 接口兼容。 若要使用此成员,请设置 dwMask 成员中的 CFM_STYLE 标志。 有关详细信息,请参阅 TOM 文档。

wKerning

类型:WORD

字号的值,上面要对字符进行刻度(yHeight)。 此值对富编辑控件显示的文本没有影响;它包含在内,以便与 TOM 接口兼容。 若要使用此成员,请设置 dwMask 成员中的 CFM_KERNING 标志。

bUnderlineType

类型:BYTE

指定下划线类型。 若要使用此成员,请设置 dwMask 成员中的 CFM_UNDERLINETYPE 标志。 此成员可以是以下值之一。

价值 意义
CFU_CF1UNDERLINE
结构 CHARFORMAT位下划线映射到 CHARFORMAT2(也就是说,它在此文本上执行 CHARFORMAT 类型的下划线)。
CFU_INVERT
对于 IME 合成,假选择。
CFU_UNDERLINE
带单条实线下划线的文本。
CFU_UNDERLINEDASH
带短划线的带下划线的文本。
CFU_UNDERLINEDASHDOT
带虚线和虚线下划线的文本。
CFU_UNDERLINEDASHDOTDOT
带虚线和双点线的下划线下划线的文本。
CFU_UNDERLINEDOTTED
带虚线下划线的文本。 对于早于 Microsoft Rich Edit 3.0 的版本,文本以纯色下划线显示。
CFU_UNDERLINEDOUBLE
带双行下划线的文本。 富编辑控件显示带有纯下划线的文本。
CFU_UNDERLINEDOUBLEWAVE
显示为 CFU_UNDERLINEWAVE
CFU_UNDERLINEHAIRLINE
显示为 CFU_UNDERLINE
CFU_UNDERLINEHEAVYWAVE
显示为 CFU_UNDERLINEWAVE
CFU_UNDERLINELONGDASH
显示为 CFU_UNDERLINEDASH
CFU_UNDERLINENONE
无下划线。 这是默认值。
CFU_UNDERLINETHICK
显示为 CFU_UNDERLINE
CFU_UNDERLINETHICKDASH
显示为 CFU_UNDERLINEDASH
CFU_UNDERLINETHICKDASHDOT
显示为 CFU_UNDERLINEDASHDOT
CFU_UNDERLINETHICKDASHDOTDOT
显示为 CFU_UNDERLINEDASHDOT
CFU_UNDERLINETHICKDOTTED
显示为 CFU_UNDERLINEDOT
CFU_UNDERLINETHICKLONGDASH
显示为 CFU_UNDERLINEDASH
CFU_UNDERLINEWAVE
RichEdit 4.1 及更高版本:带波浪线下划线的文本。
CFU_UNDERLINEWORD
RichEdit 4.1 及更高版本:仅带下划线。 富编辑控件显示带有纯下划线的文本。

bAnimation

类型:BYTE

文本动画类型。 此值对富编辑控件显示的文本没有影响;它包含在内,以便与 TOM 接口兼容。 若要使用此成员,请设置 dwMask 成员中的 CFM_ANIMATION 标志。

bRevAuthor

类型:BYTE

标识进行修订的作者的索引。 富编辑控件为每个不同的作者索引使用不同的文本颜色。 若要使用此成员,请设置 dwMask 成员中的 CFM_REVAUTHOR 标志。

bUnderlineColor

类型:BYTE

下划线颜色:

  • UnderlineColor_Black = 0x00;
  • UnderlineColor_Blue = 0x01;
  • UnderlineColor_Aqua = 0x02;
  • UnderlineColor_Lime = 0x03;
  • UnderlineColor_Fuchsia = 0x04;
  • UnderlineColor_Red = 0x05;
  • UnderlineColor_Yellow = 0x06;
  • UnderlineColor_White = 0x07;
  • UnderlineColor_Navy = 0x08;
  • UnderlineColor_Teal = 0x09;
  • UnderlineColor_Green = 0x0A;
  • UnderlineColor_Purple = 0x0B;
  • UnderlineColor_Maroon = 0x0C;
  • UnderlineColor_Olive = 0x0D;
  • UnderlineColor_DkGray = 0x0E;
  • UnderlineColor_LtGray = 0x0F;

言论

若要关闭格式设置属性,请设置 dwMask 中的相应值,但不在 dwEffects中设置相应的值。 例如,若要关闭斜体,请设置 CFM_ITALIC 但不设置 CFE_ITALIC

注意

richedit.h 标头将CHARFORMAT2定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows Vista [仅限桌面应用]
支持的最低服务器 Windows Server 2003 [仅限桌面应用]
标头 richedit.h

另请参阅

CHARFORMAT

COLORREF

EM_GETCHARFORMAT

EM_SETCHARFORMAT

EN_PROTECTED

GetSysColor

LOGFONT

RGB