API 函数: 通常,制作OCX 是离不开API 的,对于API 函数,主要就是参数的使用方法,我们虽然不能提供很全面的内容供你参考,但可以就自己积累的一些函数特别是实例代码写出来,这些代码都是在VB6 中调试过正确的,你只要依例句写出来就可以了,对每一个API,我们都提供了实例代码。 鼠标类函数 得到当前鼠标指针的坐标:GetCursorPos 函数 声明: public Type POINTAPI x As Long y As Long End Type Public Declare Function GetCursorPos Lib "user32" _ (lpPoint As POINTAPI) As Long 参数缺省为 byref 指针传递 调用:先声明一个自定义类型变量: Dim z As POINTAPI Private Sub Timer1_Timer() GetCursorPos z 注:这里 z 是引用地址传递,其值改变,就象"返回值" Label1.Caption = z.x Label2.Caption = z.y End Sub 参数lpPoint 返回鼠标在屏幕上坐标(不限于程序窗体),如将鼠标指针移到屏幕左上角时,z.x=0,z.y=0,而鼠标移到屏幕右下角时,z.x=639;z.y=477 =========================================================== 设置鼠标在屏幕上的坐标 : SetCursorPos 函数 声明: Private Declare Function SetCursorPos Lib "user32" (ByVal X As Long, ByVal Y As Long) As Long 调用如:Private Sub Command1_Click() Call SetCursorPos(600, 100) 将鼠标定位到屏幕(600,100)处。 End Sub 很简单,注:屏幕是以象素为单位的(与屏幕分辨率设定有关)。不是缇。 ========================================================== 自动按下鼠标按纽:mouse_event 过程函数 该过程能在程序中模拟手工按下或抬起鼠标,移动鼠标的操作,声明: Public Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long) 一般只用它的第 1 个参数,指明按下或抬起哪个按纽,如果要模拟鼠标移动,则要用到第 2,3 个参数dx 和 dy, 而最后面两个参数始终不用。 第 1 个参数dwFlags 的可能设置值如下: MOUSEEVENTF_LEFTDOWN=&H2: 模拟鼠标左键按下 MOUSEEVENTF_LEFTUP :模拟鼠标左键抬起 MOUSEEVENTF_RIGHTDOWN: 模拟鼠标右键按下 MOUSEEVENTF_RIGHTUP :模拟鼠标右键抬起 MOUSEEVENTF_ABSOLUTE=&H8000...