[转]WinAPI-CreateRoundRectRgn函数详细说明
声名: Declare Function CreateRoundRectRgn Lib "gdi32" Alias "CreateRoundRectRgn" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long
说明:
创建一个圆角矩形该矩形由X1,Y1-X2,Y2确定,并由X3,Y3确定的椭圆描述圆角弧度
返回值:
Long,执行成功则为区域句柄,失败则为0
用此函数给下面的窗体重绘圆弧:
1. 导入DLL
[DllImport("gdi32.dll")]
public static extern int CreateRoundRectRgn(int x1, int y1, int x2, int y2, int x3, int y3);
[DllImport("user32.dll")]
public static extern int SetWindowRgn(IntPtr hwnd, int hRgn, Boolean bRedraw);
2. CreateRoundRectRgn方法详细说明
图中展示了各参数的作用。
3. 给上面的窗体画圆弧
int Rgn = CreateRoundRectRgn(5, 5, ClientRectangle.Width – 4, ClientRectangle.Height – 4, 35, 35);
SetWindowRgn(this.Handle, Rgn, true);

浙公网安备 33010602011771号