'*****長方形のリージョンを作る関数*****
Private Declare Function CreateRectRgn Lib "gdi32" _
(ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, _
ByVal Y2 As Long) As Long
'-------------------引数--------------------
'(X1) 長方形の左上隅の x 座標を指定
'(Y1) 長方形の左上隅の y 座標を指定
'(X2) 長方形の右下隅の x 座標を指定
'(Y2) 長方形の右下隅の y 座標を指定
'------------------戻り値-------------------
'関数が成功すると、リージョンのハンドルが返り、
'関数が失敗すると、0が返る
'*****角の丸い長方形のリージョンを作る関数*****
Private Declare Function CreateRoundRectRgn Lib "gdi32" _
(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) 長方形の左上隅の x 座標を指定
'(Y1) 長方形の左上隅の y 座標を指定
'(X2) 長方形の右下隅の x 座標を指定
'(Y2) 長方形の右下隅の y 座標を指定
'(X3) 長方形の角の丸みの幅を指定
'(Y3) 長方形の角の丸みの高さを指定
'------------------戻り値-------------------
'関数が成功すると、リージョンのハンドルが返り、
'関数が失敗すると、0が返る
'*****指定した四角形に内接する楕円のリージョンを作る関数*****
Private Declare Function CreateEllipticRgn Lib "gdi32" _
(ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, _
ByVal Y2 As Long) As Long
'-------------------引数--------------------
'(X1) 楕円に外接する長方形の左上隅の x 座標を指定
'(Y1) 楕円に外接する長方形の左上隅の y 座標を指定
'(X2) 楕円に外接する長方形の右下隅の x 座標を指定
'(Y2) 楕円に外接する長方形の右下隅の y 座標を指定
'------------------戻り値-------------------
'関数が成功すると、リージョンのハンドルが返り、
'関数が失敗すると、0が返る
'構造体の定義
Private Type POINT
x As Long
y As Long
End Type
'*****多角形から構成されるリージョンを作る関数*****
Private Declare Function CreatePolygonRgn Lib "gdi32" _
(lpPoint As POINT, ByVal nCount As Long, _
ByVal nPolyFillMode As Long) As Long
'-------------------引数--------------------
'(lpPoint) POINT構造体の配列。この配列に、多角形の各頂点の座標を格納
'(nCount) 多角形の頂点の数(lpPoint 配列の要素の数)を指定
'(nPolyFillMode) 多角形塗りつぶしモード。次の値のいずれかを指定
Private Const ALTERNATE = 1& '交互モードで塗りつぶす
Private Const WINDING = 2& '全域モードで塗りつぶす
'------------------戻り値-------------------
'関数が成功すると、リージョンのハンドルが返り、
'関数が失敗すると、0が返る
'*****複数の多角形から構成されるリージョンを作る関数*****
Private Declare Function CreatePolyPolygonRgn Lib "gdi32" _
(lpPoint As POINT, lpPolyCounts As Long, _
ByVal nCount As Long, ByVal nPolyFillMode As Long) _
As Long
'-------------------引数--------------------
'(lpPoint) POINT構造体の配列。この配列に、多角形の各頂点の座標を格納
'(lpPolyCounts) 配列変数。各要素に、各多角形の頂点の数を入れておく
'(nCount) 多角形の総数を指定
'(nPolyFillMode) 多角形塗りつぶしモード。上の値のいずれかを指定
'------------------戻り値-------------------
'関数が成功すると、リージョンのハンドルが返り、
'関数が失敗すると、0が返る
|