XXXXX
C/C++
XXXXX
C#/.net
XXXXX
js
java
java
开发导航 开发导航 www.endv.cn
天云

CHARFORMAT2 structure

CHARFORMAT2 structure

包含在丰富的编辑控件中的字符格式设置的信息。charformat2是微软丰富的编辑CHARFORMAT结构2扩展。微软丰富的编辑2允许您使用结构与em_getcharformat和em_setcharformat消息。 

Contains information about character formatting in a rich edit control. CHARFORMAT2 is a Microsoft Rich Edit 2.0 extension of the CHARFORMAT structure. Microsoft Rich Edit 2.0 allows you to use either structure with the EM_GETCHARFORMAT and EM_SETCHARFORMAT messages.

Syntax

复制
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;
#if (_RICHEDIT_VER >= 0x0500)
  union {
    DWORD dwReserved;
    DWORD dwCookie;
  };
#else 
  DWORD    dwReserved;
#endif 
  SHORT    sStyle;
  WORD     wKerning;
  BYTE     bUnderlineType;
  BYTE     bAnimation;
  BYTE     bRevAuthor;
#if (_RICHEDIT_VER >= 0x0800)
  BYTE     bUnderlineColor;
#endif 
} CHARFORMAT2;

Members

cbSize

Type: UINT

指定的大小,以字节为单位的结构。之前将该结构传递给 rich edit 控件,将字节设置为CHARFORMATCHARFORMAT2结构的大小。如果字节等于CHARFORMAT结构的大小,则控件使用只有CHARFORMAT成员。

dwMask

类型︰ dword 值

指定包含有效信息CHARFORMAT2结构的部件。DwMask成员可以从两个集中的位标志值的组合。一套指示是有效的结构成员。另一套指示中性格的成员的有效属性。

 

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

价值意义
CFM_ALL

下列值的组合︰ CFM_EFFECTS |CFM_SIZE |CFM_FACE |CFM_OFFSET |CFM_CHARSET

CFM_ALL2

下列值的组合︰ CFM_ALL |CFM_EFFECTS2 |CFM_BACKCOLOR |CFM_LCID |CFM_UNDERLINETYPE |CFM_WEIGHT |CFM_REVAUTHOR |CFM_SPACING |CFM_KERNING |CFM_STYLE |CFM_ANIMATION |CFM_COOKIE

CFM_ALLCAPS

CFE_ALLCAPS值是有效的。

CFM_EFFECTS

下列值的组合︰ CFM_EFFECTS2 |CFM_FONTBOUND |CFM_EXTENDED |CFM_MATHNOBUILDUP |CFM_MATH |CFM_MATHORDINARY

CFM_BOLD

CFE_BOLD值是有效的。

CFM_COLOR

CFE_AUTOCOLOR值是有效的或crTextColor成员是有效的。

CFM_COOKIE

DwCookie值是有效的。

CFM_DISABLED

CFE_DISABLED值是有效的。

CFM_EXTENDED

CFE_EXTENDED值是有效的。

CFM_EFFECTS

下列值的组合︰ CFM_BOLD |CFM_ITALIC |CFM_UNDERLINE |CFM_COLOR |CFM_STRIKEOUT |CFE_PROTECTED |CFM_LINK

CFM_EFFECTS2

下列值的组合︰ CFM_EFFECTS |CFM_DISABLED |CFM_SMALLCAPS |CFM_ALLCAPS |CFM_HIDDEN |CFM_OUTLINE |CFM_SHADOW |CFM_EMBOSS |CFM_IMPRINT |CFM_REVISED |CFM_SUBSCRIPT |CFM_SUPERSCRIPT |CFM_BACKCOLOR

CFM_EMBOSS

CFE_EMBOSS值是有效的。

CFM_FONTBOUND

CFE_FONTBOUND值是有效的。

CFM_HIDDEN

CFE_HIDDEN值是有效的。

CFM_IMPRINT

CFE_IMPRINT值是有效的。

CFM_ITALIC

CFE_ITALIC值是有效的。

CFM_LINK

CFE_LINK值是有效的。

CFM_LINKPROTECTED

CFE_LINKPROTECTED值是有效的。

CFM_MATH

CFE_MATH值是有效的。

CFM_MATHNOBUILDUP

CFE_MATHNOBUILDUP值是有效的。

CFM_MATHORDINARY

CFE_MATHORDINARY值是有效的。

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_SUBSCRIPTCFE_SUPERSCRIPT的值是有效的。

CFM_SUPERSCRIPT

CFE_SUBSCRIPTCFE_SUPERSCRIPT的值是有效的。

CFM_UNDERLINE

CFE_UNDERLINE值是有效的。

 

 

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

价值意义
CFM_ANIMATION

BAnimation成员是有效的。

CFM_BACKCOLOR

CrBackColor成员是有效的。

CFM_CHARSET

BCharSet成员是有效的。

CFM_COLOR

CrTextColor成员是有效的除非在性格的成员设置了CFE_AUTOCOLOR标志。

CFM_FACE

成员是有效的。

CFM_KERNING

WKerning成员是有效的。

CFM_LCID

Lcid成员是有效的。

CFM_OFFSET

正文成员是有效的。

CFM_REVAUTHOR

BRevAuthor成员是有效的。

CFM_SIZE

YHeight成员是有效的。

CFM_SPACING

SSpacing成员是有效的。

CFM_STYLE

SStyle成员是有效的。

CFM_UNDERLINETYPE

BUnderlineType成员是有效的。

CFM_WEIGHT

WWeight成员是有效的。

 

性格的

类型︰ dword 值

一组位标志,指定字符效果。有的标志只是为了兼容微软文本对象模型(汤姆) 界面;rich edit 控件存储的值,但不使用它来显示文本。

此成员可以是下列值的组合。

价值意义
CFE_ALLCAPS

字符是全部大写的字母。的值并不影响该控件显示的文本的方式。此值仅适用于版本早于微软丰富编辑 3.0。

CFE_AUTOBACKCOLOR

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

CFE_AUTOCOLOR

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

CFE_BOLD

字符以粗体显示。

CFE_DISABLED

字符会显示为带有抵消 3/4 点或一个像素的影子,两者中较大。

CFE_EMBOSS

字符被浮雕。值不影响控制如何显示的文本。

CFE_EXTENDED

字符是不太常见的脚本。支持脚本字体应该检查是否它有这种字符的字形。

CFE_FONTBOUND

Rich edit 控件选择字体,还因为积极的字体不支持的字符的表表者。这个过程被称为字体绑定。

CFE_HIDDEN

微软丰富编辑 3.0 及更高版本,不显示的字符。

CFE_IMPRINT

作为印迹字符显示的字符。值不影响控制如何显示的文本。

CFE_ITALIC

字符以斜体显示。

CFE_LINK

Rich edit 控件可以发送EN_LINK通知代码,当鼠标指针停留在具有CFE_LINK效果的文本时,它接收鼠标消息。

CFE_LINKPROTECTED

汉字是友好名称链接的一部分。

CFE_MATH

字符在数学区。

CFE_MATHNOBUILDUP

字符不参加数学构建了。例如,当应用于 a /,/ 不会用来建立一小部分。

CFE_MATHORDINARY

作为一个数学区域内的普通文本显示的字符。

CFE_OUTLINE

字符显示为空心字符。值不影响控制如何显示的文本。

CFE_PROTECTED

字符的保障;尝试对它们进行修改会导致EN_PROTECTED通知代码。

CFE_REVISED

字符被标记为修订。

CFE_SHADOW

作为隐藏字符显示的字符。值不影响控制如何显示的文本。

CFE_SMALLCAPS

字符是在小型大写字母。值不影响控制如何显示的文本。

CFE_STRIKEOUT

字符是剔除。

CFE_SUBSCRIPT

字符的下标。CFE_SUPERSCRIPTCFE_SUBSCRIPT的值是互斥的。对于这两个值,控件将自动计算偏移量和较小的字体大小。或者,您可以使用yHeight正文成员显式指定字体大小和下标和上标字符偏移量。

CFE_SUPERSCRIPT

字符是上标。

CFE_UNDERLINE

带下划线的字符。

 

yHeight

类型︰

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

正文

类型︰

字符偏移量从基线,以缇为单位。如果此成员的值为正值,字符是上标;如果值为负值,字符是下标。若要使用此成员,在设置了CFM_OFFSET标志dwMask成员。

crTextColor

类型︰ COLORREF

文本颜色。若要使用此成员,在设置了CFM_COLOR标志dwMask成员。如果指定了CFE_AUTOCOLOR字符效果,此成员将被忽略。若要生成COLORREF,使用RGB宏。

bCharSet

类型︰字节

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

bPitchAndFamily

类型︰字节

指定字体系列和球场。此成员是LOGFONT结构的lfPitchAndFamily成员相同。

类型︰ TCHAR[LF_FACESIZE]

Null 终止字符数组指明字体名称。若要使用此成员,在设置了CFM_FACE标志dwMask成员。

wWeight

类型︰ WORD

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

sSpacing

类型︰

字母,以缇为单位之间的水平间距。此值已由 rich edit 控件; 显示的文本没有影响它是包括与 Windows 汤姆接口的兼容性。若要使用此成员,在设置了CFM_SPACING标志dwMask成员。

crBackColor

类型︰ COLORREF

背景色。若要使用此成员,在设置了CFM_BACKCOLOR标志dwMask成员。如果指定了CFE_AUTOBACKCOLOR字符效果,此成员将被忽略。要生成,使用宏。

lcid

类型︰ LCID

包含在较低的字和排序标识符的语言标识符和保留的价值较高的字在一个 32 位的区域设置标识符。此成员已由 rich edit 控件显示的文本没有影响,但拼写和语法检查程序可以使用它来处理依赖于语言的问题。您可以使用宏来创建一个LCID值。若要使用此成员,在设置了CFM_LCID标志dwMask成员。

dwReserved

类型︰ dword 值

保留;值必须为零。

dwCookie

类型︰ dword 值

客户端 cookie。此成员是不透明的 rich edit 控件。

dwReserved

类型︰ dword 值

保留;值必须为零。

sStyle

类型︰

字符样式的句柄。此值已由 rich edit 控件; 显示的文本没有影响它是包括与 WindowsTOM 接口的兼容性。若要使用此成员,在设置了CFM_STYLE标志dwMask成员。详细信息请参阅汤姆文档。

wKerning

类型︰ WORD

字体大小,上面进行字偶间距调整的字符 (yHeight) 的值。此值已由 rich edit 控件; 显示的文本没有影响它是包括与汤姆接口的兼容性。若要使用此成员,在设置了CFM_KERNING标志dwMask成员。

bUnderlineType

类型︰字节

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

价值意义
CFU_CF1UNDERLINE

结构将CHARFORMAT位下划线映射到CHARFORMAT2,(也就是说,它执行下划线CHARFORMAT类型对此文本)。

CFU_INVERT

为 ime,假选择。

CFU_UNDERLINE

带有一条实线下划线的文本。

CFU_UNDERLINEDASH

带有虚线下划线的文本。

CFU_UNDERLINEDASHDOT

虚线和点线线带有下划线的文本。

CFU_UNDERLINEDASHDOTDOT

带有虚线和加倍的虚线下划线的文本。

CFU_UNDERLINEDOTTED

带有虚线下划线的文本。版本还带有固体下划线显示比微软丰富编辑 3.0,早的文本。

CFU_UNDERLINEDOUBLE

双线带有下划线的文本。Rich edit 控件显示与固体的下划线的文本。

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 及以后︰ 只有词下划线。Rich edit 控件显示与固体的下划线的文本。

 

bAnimation

类型︰字节

文本动画类型。此值已由 rich edit 控件; 显示的文本没有影响它是包括与汤姆接口的兼容性。若要使用此成员,在设置了CFM_ANIMATION标志dwMask成员。

bRevAuthor

类型︰字节

标识作者进行修改的索引。Rich edit 控件为每个不同的作者索引使用不同的文本颜色。若要使用此成员,在设置了CFM_REVAUTHOR标志dwMask成员。

bUnderlineColor

类型︰字节

Underline color.

Remarks

To turn off a formatting attribute, set the appropriate value in dwMask but do not set the corresponding value in dwEffects. For example, to turn off italics, set CFM_ITALIC but do not set CFE_ITALIC.

Requirements

Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2003 [desktop apps only]

Header

Richedit.h

Unicode and ANSI names

CHARFORMAT2W (Unicode) and CHARFORMAT2A (ANSI)

See also

CHARFORMAT
COLORREF
EM_GETCHARFORMAT
EM_SETCHARFORMAT
EN_PROTECTED
GetSysColor
LOGFONT
RGB
posted @ 2016-12-14 17:22  Endv  阅读(594)  评论(0编辑  收藏  举报