导航:  Windows Controls Wrapper Functions > Rich Edit Control > Structures >

CHARFORMAT2

上一页返回章节概述下一页

描述

 

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

 

C/C++ 语法

 

typedef struct _charformat2 {

UINT cbSize;

DWORD dwMask;

DWORD dwEffects;

LONG yHeight;

LONG yOffset;

COLORREF crTextColor;

BYTE bCharSet;

BYTE bPitchAndFamily;

TCHAR szFaceName[LF_FACESIZE];

WORD wWeight;

SHORT sSpacing;

COLORREF crBackColor;

LCID lcid;

DWORD dwReserved;

SHORT sStyle;

WORD wKerning;

BYTE bUnderlineType;

BYTE bAnimation;

BYTE bRevAuthor;

BYTE bReserved1;

} CHARFORMAT2;

 

PB语法

 

TYPE CHARFORMAT2A

cbSize          AS DWORD

dwMask          AS DWORD

dwEffects       AS DWORD

yHeight         AS LONG

yOffset         AS LONG

crTextColor     AS DWORD

bCharSet        AS BYTE

bPitchAndFamily AS BYTE

szFaceName      AS ASCIIZ * %LF_FACESIZE

wFiller         AS WORD

wWeight         AS WORD

sSpacing        AS INTEGER

crBackColor     AS DWORD

lcid            AS DWORD

dwReserved      AS DWORD

sStyle          AS INTEGER

wKerning        AS WORD

bUnderlineType  AS BYTE

bAnimation      AS BYTE

bRevAuthor      AS BYTE

bReserved1      AS BYTE

END TYPE

 

Unicode版本:

 

TYPE CHARFORMAT2W BYTE

cbSize          AS DWORD

dwMask          AS DWORD

dwEffects       AS DWORD

yHeight         AS LONG

yOffset         AS LONG

crTextColor     AS DWORD

bCharSet        AS BYTE

bPitchAndFamily AS BYTE

szFaceName      AS WSTRINGZ * %LF_FACESIZE

wFiller         AS WORD

wWeight         AS WORD

sSpacing        AS INTEGER

crBackColor     AS DWORD

lcid            AS DWORD

dwReserved      AS DWORD

sStyle          AS INTEGER

wKerning        AS WORD

bUnderlineType  AS BYTE

bAnimation      AS BYTE

bRevAuthor      AS BYTE

bReserved1      AS BYTE

END TYPE

 

成员

 

cbSize

 

指定结构的大小(以字节为单位)。 在将此结构传递给丰富的编辑控件之前,请将cbSize设置为CHARFORMATCHARFORMAT2结构的大小。 如果cbSize等于CHARFORMAT结构的大小,则控件仅使用CHARFORMAT成员。

 

dwMask

 

指定包含有效信息的CHARFORMAT2结构的部分。 dwMask成员可以是来自两组位标志的值的组合。 一组表示结构成员有效。 另一个集合表示dwEffects成员中的有效属性。

 

设置以下值以指示dwEffects成员的有效属性。

 

Value

Meaning

CFM_ALLCAPS

CFE_ALLCAPS值有效。

CFM_BOLD

CFE_BOLD值有效。

CFM_COLOR

CFE_AUTOCOLOR值有效,或crTextColor成员有效。

CFM_DISABLED

CFE_DISABLED值有效。

CFM_EMBOSS

CFE_EMBOSS值有效。

CFM_HIDDEN

CFE_HIDDEN值有效。

CFM_IMPRINT

CFE_IMPRINT值有效。

CFM_ITALIC

CFE_ITALIC值有效。

CFM_LINK

CFE_LINK价值有效。

CFM_OUTLINE

CFE_OUTLINE值有效。

CFM_PROTECTED

CFE_PROTECTED值有效。

CFM_REVISED

CFE_REVISION值有效。

CFM_SHADOW

CFE_SHADOW值有效。

CFM_SMALLCAPS

CFE_SMALLCAPS值有效。

CFM_STRIKEOUT

CFE_STRIKEOUT值有效。

CFM_SUBSCRIPT

CFE_SUBSCRIPT和CFE_SUPERSCRIPT值是有效的。

CFM_SUPERSCRIPT

CFE_SUBSCRIPT和CFE_SUPERSCRIPT值是有效的。

CFM_UNDERLINE

CFE_UNDERLINE值有效。

 

设置以下值以指示有效的结构成员。

 

CFM_ANIMATION

bAnimation成员有效。

CFM_BACKCOLOR

crBackColor成员有效。

CFM_CHARSET

bCharSet成员有效。

CFM_COLOR

crTextColor成员是有效的,除非在dwEffects成员中设置了CFE_AUTOCOLOR标志。

CFM_FACE

szFaceName成员有效。

CFM_KERNING

wKerning成员有效。

CFM_LCID

lcid成员有效。

CFM_OFFSET

yOffset成员有效。

CFM_REVAUTHOR

bRevAuthor成员有效。

CFM_SIZE

yHeight成员有效。

CFM_SPACING

sSpacing成员有效。

CFM_STYLE

sStyle成员有效。

CFM_UNDERLINETYPE

bUnderlineType成员有效。

CFM_WEIGHT

wWeight成员有效。

 

dwEffects

 

一组指定字符效果的位标志。 一些标志仅包括与Microsoft文本对象模型(TOM)接口的兼容性; 丰富的编辑控件存储该值,但不使用它来显示文本。

 

该成员可以是以下值的组合。

 

CFE_ALLCAPS

人物都是大写字母。 该值不影响控件显示文本的方式。 此值仅适用于Rich Edit 3.0之前的版本。

CFE_AUTOBACKCOLOR

背景颜色是GetSysColor(COLOR_WINDOW)的返回值。 如果设置了此标志,crBackColor成员将被忽略。

CFE_AUTOCOLOR

文本颜色是返回值GetSysColor(COLOR_WINDOWTEXT)。 如果设置了此标志,则crTextColor成员将被忽略。

CFE_BOLD

人物大胆

CFE_DISABLED

字符显示为偏移3/4点或一个像素的阴影,以较大者为准。

CFE_EMBOSS

字符被压花。 该值不影响控件如何显示文本。

CFE_HIDDEN

对于Rich Edit 3.0及更高版本,不会显示字符。

CFE_IMPRINT

字符显示为打印字符。 该值不影响控件如何显示文本。

CFE_ITALIC

字符是斜体

CFE_LINK

丰富的编辑控件可以在鼠标指针位于具有CFE_LINK效果的文本上时收到鼠标信息时发送EN_LINK通知消息。

CFE_OUTLINE

字符显示为概要字符。 该值不影响控件如何显示文本。

CFE_PROTECTED

人物受到保护; 尝试修改它们将导致EN_PROTECTED通知消息。

CFE_REVISED

字符被标记为已修改。

CFE_SHADOW

字符显示为阴影字符。 该值不影响控件如何显示文本。

CFE_SMALLCAPS

字符是小写字母。 该值不影响控件如何显示文本。

CFE_STRIKEOUT

人物被打倒了

CFE_SUBSCRIPT

字符是下标。 CFE_SUPERSCRIPT和CFE_SUBSCRIPT值是互斥的。 对于这两个值,控件自动计算偏移和较小的字体大小。 或者,您可以使用yHeightyOffset成员明确指定下标和上标字符的字体大小和偏移量。

CFE_SUPERSCRIPT

字符是上标。

CFE_UNDERLINE

字符加下划线。

 

yHeight

 

指定字符高度,以缇为单位(1/1440英寸,或打印机点数的1/20)。 要使用此成员,请在dwMask成员中设置CFM_SIZE标志。

 

yOffset

 

字符偏离基线,以缇为单位。 如果这个成员的价值是积极的,那么这个角色就是上标; 如果值为负,则该字符是下标。 要使用此成员,请在dwMask成员中设置CFM_OFFSET标志。

 

crTextColor

 

文字颜色。 要使用此成员,请在dwMask成员中设置CFM_COLOR标志。 如果指定了CFE_AUTOCOLOR字符效果,则忽略该成员。 要生成COLORREF,请使用RGB功能。

 

bCharSet

 

字符集值。 它可以是为LOGFONT结构lfCharSet成员指定的值之一。 要使用此成员,请在dwMask成员中设置CFM_CHARSET标志。

 

bPitchAndFamily

 

指定字体系列和音高。 该成员与LOGFONT结构的lfPitchAndFamily成员相同。

 

wWeight

 

字体重量 该成员与LOGFONT结构的lfWeight成员相同。 要使用此成员,请在dwMask成员中设置CFM_WEIGHT标志。

 

sSpacing

 

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

 

crBackColor

 

背景颜色。 要使用此成员,请在dwMask成员中设置CFM_BACKCOLOR标志。 如果指定了CFE_AUTOBACKCOLOR字符效果,则忽略该成员。 要生成一个,使用宏。

 

lcid

 

一个32位的区域设置标识符,其中包含较低字中的语言标识符,排序标识符和高位字中的保留值。 该成员对丰富的编辑控件显示的文本没有影响,但拼写和语法检查可以使用它来处理与语言有关的问题。 您可以使用宏创建一个LCID值。 要使用此成员,请在dwMask成员中设置CFM_LCID标志。

 

dwReserved

 

保留; 该值必须为零。

 

sStyle

 

字符样式句柄。 该值对丰富的编辑控件显示的文本没有影响; 它包含与WindowsTOM接口的兼容性。 要使用此成员,请在dwMask成员中设置CFM_STYLE标志。 有关更多信息,请参阅文本对象模型文档。

 

wKerning

 

字体大小的值,其中以字符(yHeight)为单位)。 该值对丰富的编辑控件显示的文本没有影响; 它包含与TOM接口的兼容性。 要使用此成员,请在dwMask成员中设置CFM_KERNING标志。

 

bUnderlineType

 

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

 

CFU_CF1UNDERLINE

结构将CHARFORMAT的下划线映射到CHARFORMAT2(即,在此文本上执行CHARFORMAT类型的下划线)。

CFU_UNDERLINE

固定的下划线文字。

CFU_UNDERLINEDOTTED

带下划线的文字。 对于早于Rich Edit 3.0的版本,文本显示为一个坚实的下划线。

CFU_UNDERLINEDOUBLE

双下划线文字。 丰富的编辑控件用一个坚实的下划线显示文本。

CFU_UNDERLINENONE

没有下划线 这是默认值。

CFU_UNDERLINEWORD

仅下划线 丰富的编辑控件用一个坚实的下划线显示文本。

 

bAnimation

 

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

 

bRevAuthor

 

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

 

bReserved1

 

保留; 该值必须为零。

 

备注

 

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

 

最低操作系统

 

Windows 95与Rich Edit 2.0,Windows 98,Windows NT 4.0。

 

引用文件 #INCLUDE Once

 

RichEdit.inc