EM_SETCHARFORMAT消息

在 Rich Edit 控件中设置字符格式。

参数

wParam

应用于控件的字符格式。 如果此参数为零,则设置默认字符格式。 否则,它可以是以下值之一。

含义
SCF_ALL
将格式应用于 控件中的所有文本。 对 SCF_SELECTIONSCF_WORD 无效。
SCF_ASSOCIATEFONT
RichEdit 4.1: 将字体关联到给定脚本,从而更改该脚本的默认字体。 若要指定字体,请使用 CHARFORMAT2 的以下成员: yHeightbCharSetbPitchAndFamilyszFaceNamelcid
SCF_ASSOCIATEFONT2
RichEdit 4.1: 将代理项 (平面 2) 字体关联到给定脚本,从而更改该脚本的默认字体。 若要指定字体,请使用 CHARFORMAT2 的以下成员: yHeightbCharSetbPitchAndFamilyszFaceNamelcid
SCF_CHARREPFROMLCID
从 LCID 获取字符剧目。
SCF_DEFAULT
RichEdit 4.1: 设置控件的默认字体。
SPF_DONTSETDEFAULT
当 Rich edit 控件为空时,阻止设置默认段落格式。
SCF_NOKBUPDATE
RichEdit 4.1: 阻止键盘切换以匹配字体。 例如,如果设置了阿拉伯语字体,则通常 Bidi 语言的自动键盘功能会将键盘更改为阿拉伯语键盘。
SCF_SELECTION
将格式应用于当前所选内容。 如果所选内容为空,则字符格式将应用于插入点,并且新字符格式仅在插入点更改之前生效。
SPF_SETDEFAULT
设置默认段落格式属性。
SCF_SMARTFONT
仅当字体可以处理脚本时,才应用字体。
SCF_USEUIRULES
RichEdit 4.1:SCF_SELECTION 一起使用。 指示格式来自工具栏或其他 UI 工具,因此应使用 UI 格式规则而不是文本格式设置。
SCF_WORD
将格式应用于所选的一个或多个单词。 如果所选内容为空,但插入点位于单词内,则将格式应用于该单词。 SCF_WORD值必须与SCF_SELECTION值结合使用。

lParam

指向 CHARFORMAT 结构的指针,该结构指定要使用的字符格式。 仅更改 由 dwMask 成员指定的格式设置属性。

Microsoft Rich Edit 2.0 及更高版本:此参数可以是指向 CHARFORMAT2 结构的指针,该结构是 CHARFORMAT 结构的扩展。 在发送 EM_SETCHARFORMAT 消息之前,请将结构的 cbSize 成员设置为 sizeof(CHARFORMAT)sizeof(CHARFORMAT2) 指示正在使用哪个版本的结构。

当字符无效时, szFaceNamebCharSet 成员可能会被推翻,例如:日文汉字字符的 Arial。

返回值

如果操作成功,则返回值为非零值。

如果操作失败,则返回值为零。

备注

如果使用相同的参数多次发送此消息,则会切换对文本的影响。 也就是说,发送消息一次就会产生效果,发送消息两次会取消效果,依此类推。

要求

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

请参阅

引用

CHARFORMAT

CHARFORMAT2