小甲鱼 发表于 2016-2-20 01:05:54

CreateEllipticRgn

函数功能:

CreateEllipticRgn 函数用于创建一个椭圆形区域。


API 函数原型:

HRGN CreateEllipticRgn(
_In_ int nLeftRect,
_In_ int nTopRect,
_In_ int nRightRect,
_In_ int nBottomRect
);

参数解析:


参数 含义
nLeftRect 指定椭圆区域的限定矩形的左上角的 x 坐标,逻辑单位
nTopRect 指定椭圆区域的限定矩形的左上角的 y 坐标,逻辑单位
nRightRect 指定椭圆区域的限定矩形的右下角的 x 坐标,逻辑单位
nBottomRect 指定椭圆区域的限定矩形的右下角的 y 坐标,逻辑单位


返回值:

1. 如果函数调用成功,返回值是椭圆形区域的句柄(类型是 HRGN);

2. 如果函数调用失败,返回值是 NULL。


备注:

1. 当你不再需要这个 HRGN 对象,请使用 DeleteObject 函数删除它。

2. 椭圆的限定矩形定义了该区域的大小、形状和方向: 矩形长边的长度定义椭圆的长轴、短边的长度定义椭圆的短轴;矩形的中心点定义椭圆长轴和短轴的交点。

【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。

松V溪 发表于 2022-10-24 11:39:17


这个算法是怎么来的啊??我看不懂,{:10_266:}{:10_266:}{:10_266:}        int cx = ((rcWind.right - rcWind.left) - rcClient.right) / 2;
        int cy = ((rcWind.bottom - rcWind.top + GetSystemMetrics(SM_CYCAPTION)) - rcClient.bottom) / 2;

        // 设置圆形区域
        //HRGN rgn = CreateEllipticRgn(0 + cx, 0 + cy, 640 + cx, 640 + cy);
页: [1]
查看完整版本: CreateEllipticRgn