[转]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

用此函数给下面的窗体重绘圆弧: 
image 
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方法详细说明 
image 
图中展示了各参数的作用。

3. 给上面的窗体画圆弧 
int Rgn = CreateRoundRectRgn(5, 5, ClientRectangle.Width – 4, ClientRectangle.Height – 4, 35, 35); 
SetWindowRgn(this.Handle, Rgn, true);

4. 运行结果 
image 
看到没。给窗体重绘了图角。。

posted @ 2016-03-16 11:08  博客园新新新新人  阅读(667)  评论(0)    收藏  举报