勇芳软件工作室.汉化:  Painting and Drawing > Painting and Drawing Functions >

DrawState

Previous pageReturn to chapter overviewNext page

描述

 

DrawState功能显示图像并应用视觉效果来指示状态,例如禁用或默认状态。

 

C++ 语法

 

BOOL DrawState(

__in HDC hdc,

__in HBRUSH hbr,

__in DRAWSTATEPROC lpOutputFunc,

__in LPARAM lData,

__in WPARAM wData,

__in int x,

__in int y,

__in int cx,

__in int cy,

__in UINT fuFlags

);

 

PowerBASIC 语法

 

FUNCTION DrawState ( _

BYVAL hdc AS DWORD, _

BYVAL hbr AS DWORD, _

BYVAL lpOutputFunc AS DWORD, _

BYVAL lData AS LONG, _

BYVAL wData AS DWORD, _

BYVAL x AS LONG, _

BYVAL y AS LONG, _

BYVAL cx AS LONG, _

BYVAL cy AS LONG, _

BYVAL fuFlags AS DWORD _

) AS LONG

 

参数

 

hdc

 

[in]处理设备上下文以进行绘制。

 

hbr

 

[in]如果fuFlags参数指定的状态为DSS_MONO,则用于画图像的画笔处理。其他状态忽略此参数。

 

lpOutputFunc

 

[in]指向用于呈现图像的应用程序定义的回调函数的指针。如果fuFlags中的图像类型为DST_COMPLEX,则此参数是必需的。它是可选的,如果图像类型为DST_TEXT,则可以为NULL。对于所有其他图像类型,此参数将被忽略。有关回调函数的更多信息,请参阅DrawStateProc功能。

 

lData

 

[in]指定有关图像的信息。该参数的含义取决于图像类型。

 

wData

 

[in]指定有关图像的信息。该参数的含义取决于图像类型。但是,这是零扩展用于DrawStateProc功能。

 

x

 

[in]指定绘制图像的水平位置(以设备为单位)。

 

y

 

[in]指定绘制图像的垂直位置(以设备为单位)。

 

cx

 

[in]以设备为单位指定图像的宽度。如果图像类型为DST_COMPLEX,则此参数是必需的。否则,计算图像的宽度可以为零。

 

cy

 

[in]以设备为单位指定图像的高度。如果图像类型为DST_COMPLEX,则此参数是必需的。否则,计算图像的高度可以为零。

 

fuFlags

 

[in]指定图像类型和状态。此参数可以是以下类型值之一。

 

值类型)

含义

DST_BITMAP

图像是一个位图。lData参数是位图句柄。请注意,位图不能被选择到现有的设备上下文中。

DST_COMPLEX

图像是应用程序定义的。要渲染图像,DrawState调用由lpOutputFunc参数指定的回调函数。

DST_ICON

图像是一个图标。LDATA参数是图标句柄。

DST_PREFIXTEXT

图像是可能包含加速器助记符的文本。DrawState将和号(&)前缀字符解释为用于强调以下字符的指令。LDATA参数是指向字符串的指针,WDATA参数指定长度。如果WDATA为零,则字符串必须为空终止。

DST_TEXT

图像是文字。LDATA参数是指向字符串的指针,WDATA参数指定长度。如果WDATA为零,则字符串必须为空终止。

 

此参数也可以是以下状态值之一。

 

值类型)

含义

DSS_DISABLED

压印图像。

DSS_HIDEPREFIX

Windows 2000 / XP / Vista / Windows 7:忽略文本中的&符号(&)前缀字符,因此后面的字母不会加下划线。这必须与DST_PREFIXTEXT一起使用。

DSS_MONO

使用hbr参数指定的画笔绘制图像。

DSS_NORMAL

绘制图像,无需任何修改。

DSS_PREFIXONLY

Windows 2000 / XP / Vista / Windows 7:仅在符号(&)前缀字符之后的字母位置绘制下划线。没有绘制字符串中的文本。这必须与DST_PREFIXTEXT一起使用。

DSS_RIGHT

将文本对齐到右侧。

DSS_UNION

抖动图像。

 

对于除DSS_NORMAL之外的所有状态,在应用视觉效果之前,图像将转换为单色。

 

返回值

 

如果函数成功,返回值不为零。

 

如果函数失败,返回值为零。

 

备注

 

Windows 95/98 / Me:Microsoft Layer for Unicode支持DrawStateW.

 

引用文件 #INCLUDE Once

 

WinUser.inc(包括Windows.inc)