DrawThemeEdge 函数 (uxtheme.h)

绘制由矩形的视觉样式定义的一个或多个边缘。

语法

HRESULT DrawThemeEdge(
  [in]  HTHEME  hTheme,
  [in]  HDC     hdc,
  [in]  int     iPartId,
  [in]  int     iStateId,
  [in]  LPCRECT pDestRect,
  [in]  UINT    uEdge,
  [in]  UINT    uFlags,
  [out] LPRECT  pContentRect
);

参数

[in] hTheme

类型: HTHEME

窗口的指定主题数据的句柄。 使用 OpenThemeData 创建 HTHEME。

[in] hdc

类型: HDC

HDC。

[in] iPartId

类型: int

int 类型的值,该值指定包含矩形的部分。 请参阅 部件和状态

[in] iStateId

类型: int

指定部件状态的 int 类型的值。 请参阅 部件和状态

[in] pDestRect

类型: LPCRECT

指向 RECT 结构的指针,该结构包含以逻辑坐标表示的矩形。

[in] uEdge

类型: UINT

指定要绘制的内部和外部边缘类型的 UINT。 此参数必须是一个内部边界标志和一个外部边界标志的组合,或者其中一个组合标志。 边框标志为:

含义
BDR_RAISEDINNER
凸起的内边缘
BDR_SUNKENINNER
凹陷内部边缘
BDR_RAISEDOUTER
凸起的外边缘
BDR_SUNKENOUTER
凹陷的外边缘
EDGE_BUMP
BDR_RAISEDOUTER和BDR_SUNKENINNER的组合
EDGE_ETCHED
BDR_SUNKENOUTER和BDR_RAISEDINNER的组合
EDGE_RAISED
BDR_RAISEDOUTER和BDR_RAISEDINNER的组合
EDGE_SUNKEN
BDR_SUNKENOUTER和BDR_SUNKENINNER的组合

[in] uFlags

类型: UINT

指定要绘制的边框类型的 UINT。 此参数可以是以下值的组合。

含义
BF_ADJUST
pDestRect 参数指向的矩形将缩小以排除绘制的边缘;否则矩形不会更改。
BF_BOTTOM
边框的底部。
BF_BOTTOMLEFT
边框的底部和左侧。
BF_BOTTOMRIGHT
边框矩形的底部和右侧。
BF_DIAGONAL
对角线边框。
BF_DIAGONAL_ENDBOTTOMLEFT
对角线边框。 终点是矩形的左下角;原点位于右上角。
BF_DIAGONAL_ENDBOTTOMRIGHT
对角线边框。 终点是矩形的右下角;原点为左上角。
BF_DIAGONAL_ENDTOPLEFT
对角线边框。 终点是矩形的左上角;原点为右下角。
BF_DIAGONAL_ENDTOPRIGHT
对角线边框。 终点是矩形的右上角;原点为左下角。
BF_FLAT
平面边框。
BF_LEFT
边框的左侧。
BF_MIDDLE
矩形的内部要填充。
BF_MONO
一维边框。
BF_RECT
整个边框矩形。
BF_RIGHT
边框的右侧。
BF_SOFT
软按钮而不是磁贴。
BF_TOP
边框的顶部。
BF_TOPLEFT
边框的顶部和左侧。
BF_TOPRIGHT
边框的顶部和右侧。

[out] pContentRect

类型: LPRECT

如果 uFlags 设置为 BF_ADJUST,则指向 RECT 结构的指针,该结构包含接收内部矩形的矩形(以逻辑坐标表示)。 此参数可以设置为 NULL

返回值

类型: HRESULT

如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 uxtheme.h
Library UxTheme.lib
DLL UxTheme.dll

另请参阅

属性标识符