Pen::SetCompoundArray 方法 (gdipluspen.h)
Pen::SetCompoundArray 方法设置此 Pen 对象的复合数组。
语法
Status SetCompoundArray(
[in] const REAL *compoundArray,
[in] INT count
);
parameters
[in] compoundArray
类型: const REAL*
指向指定复合数组的实数数组的指针。 该数组中的元素必须按升序排列,不能小于 0,也不能大于 1。
[in] count
类型: INT
指定 compoundArray 数组中的元素数的正偶数整数。 整数不得大于复合数组中的元素数。
返回值
类型: 状态
如果方法成功,则返回 Ok,这是 Status 枚举的元素。
如果 方法失败,它将返回 Status 枚举的其他元素之一。
注解
假设你希望笔绘制两条平行线,其中第一行的宽度是笔宽的 20%,分隔两行的空间宽度是笔宽度的 50%,第二行的宽度是笔宽度的 30%。 首先创建一个 Pen 对象和一个实数数组。 然后,可以通过将值为 0.0、0.2、0.7 和 1.0 的数组传递给 Pen 对象的 Pen::SetCompoundArray 方法来设置复合数组。
如果将 Pen 对象的对齐方式设置为 PenAlignmentInset,则不能使用该笔绘制复合线。
示例
以下示例创建 一个 Pen 对象并设置笔的复合数组。 然后,代码使用 Pen 对象绘制一条线。
VOID Example_SetCompoundArray(HDC hdc)
{
Graphics graphics(hdc);
// Create an array of real numbers and a Pen object.
REAL compVals[6] = {0.0f, 0.2f, 0.5f, 0.7f, 0.9f, 1.0f};
Pen pen(Color(255, 0, 0, 255), 30);
// Set the compound array of the pen.
pen.SetCompoundArray(compVals, 6);
// Draw a line with the pen.
graphics.DrawLine(&pen, 5, 20, 405, 200);
}
要求
最低受支持的客户端 | Windows XP、Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | gdipluspen.h (包括 Gdiplus.h) |
Library | Gdiplus.lib |
DLL | Gdiplus.dll |