Windows
API作为一套功能强大的应用程序接口,使VB可以实现对Windows底层的控制,完成VB不具有的功能。下面介绍几种使用API函数的方法。
一、制作特殊窗口
1.各种形状的窗口(仅给出了函数名,具体定义可以查阅API
Viewer)
1)CreateEllipticRgn
建立一个椭圆形的区域;
2)CreateRoundRectRgn
建立一个圆角矩形的区域;
3)CreatePolygonRgn
建立一个多边形区域;
4)CreatePolyPolygonRgn建立多个可重叠的多边形区域;
5)CreateRectRgn
建立一个矩形区域;
6)CombineRg连接两个区域,通过代入不同的参数可以实现多种合并方式;
7)SetWindowRgn
设定窗口的范围,使用前边创建的区域;
8)FrameRgn
在指定区域画上边框。
下边的程序就是建立一个形如“棒槌”的窗口:
Private Sub Form1_Load() Dim p, q As Long p =
CreateEllipticRgn(0, 0, 200, 200) ′通过制定左上角和右下角的坐标建立一个圆 q =
CreateRoundRectRgn(40, 120, 160, 400, 20, 20)
′通过制定左上角和右下角的坐标以及圆角的宽度建立一个圆角矩形 CombineRgn p, q, p, RGN_OR
′联合两个区域,使用或(就是取并集)运算 SetWindowRgn hWnd, p, True
′设置窗口区域 Me.Refresh ′刷新窗口 End
Sub 2.浮动窗口
Private Sub Form1_Load() Dim p As Long p =
GetWindowLong(hWnd,GWLEXSTYLE) ′取得当前窗口属性 SetWindowLong hWnd,
GWL_EXSTYLE,p + WS_EX_TRANSPARENT ′加上一个透明属性 Me.Refresh End
Sub GetWindowLong 和 SetWindowLong
配合使用还可以更改窗口的不少属性,有兴趣的读者不妨一试。