资源描述:
《vb编程api函数》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、vb编程api函数--鼠标类得到当前鼠标指针的坐标:GetCursorPos函数声明:publicTypePOINTAPIxAsLongyAsLongEndTypePublicDeclareFunctionGetCursorPosLib"user32"_(lpPointAsPOINTAPI)AsLong参数缺省为byref指针传递 调用:先声明一个自定义类型变量:DimzAsPOINTAPIPrivateSubTimer1_Timer()GetCursorPosz注:这里z是引用地址传递,其值改变
2、,就象"返回值"Label1.Caption=z.xLabel2.Caption=z.yEndSub参数lpPoint返回鼠标在屏幕上坐标(不限于程序窗体),如将鼠标指针移到屏幕左上角时,z.x=0,z.y=0,而鼠标移到屏幕右下角时,z.x=639;z.y=477===========================================================设置鼠标在屏幕上的坐标:SetCursorPos函数声明:PrivateDeclareFunctionSetCurso
3、rPosLib"user32"(ByValXAsLong,ByValYAsLong)AsLong调用如:PrivateSubCommand1_Click()CallSetCursorPos(600,100)将鼠标定位到屏幕(600,100)处。EndSub很简单,注:屏幕是以象素为单位的(与屏幕分辨率设定有关)。不是缇。 ==========================================================自动按下鼠标按纽:mouse_event过程函数该过程能在程序
4、中模拟手工按下或抬起鼠标,移动鼠标的操作,声明:PublicDeclareSubmouse_eventLib"user32"(ByValdwFlagsAsLong,ByValdxAsLong,ByValdyAsLong,ByValcButtonsAsLong,ByValdwExtraInfoAsLong)一般只用它的第1个参数,指明按下或抬起哪个按纽,如果要模拟鼠标移动,则要用到第2,3个参数dx和dy,而最后面两个参数始终不用。第1个参数dwFlags的可能设置值如下:MOUSEEVENTF_L
5、EFTDOWN=&H2:模拟鼠标左键按下 MOUSEEVENTF_LEFTUP:模拟鼠标左键抬起 MOUSEEVENTF_RIGHTDOWN:模拟鼠标右键按下 MOUSEEVENTF_RIGHTUP:模拟鼠标右键抬起 MOUSEEVENTF_ABSOLUTE=&H8000:由参数dx和dy指定鼠标坐标系统中的一个绝对位置。在鼠标坐标系统中,屏幕在水平和垂直方向上均匀分割成65535×65535个单元 MOUSEEVENTF_MOVE=&H1:移动鼠标 调用如:在屏幕上指定位置按下鼠标左键:Publ
6、icConstMOUSEEVENTF_LEFTDOWN=&H2PublicDeclareFunctionSetCursorPosLib"user32"(ByValxAsLong,ByValyAsLong)AsLongPrivateSubTimer1_Timer()SetCursorPos300,20mouse_eventMOUSEEVENTF_LEFTDOWN,0&,0&,0&,0&EndSub模拟鼠标移动需要设置其dx和dy参数来确定鼠标位置,这时第1个参数用MOUSEEVENTF_MOVE加上
7、MOUSEEVENTF_ABSOLUTE组合,如下:PublicConstMOUSEEVENTF_MOVE=&H1PublicConstMOUSEEVENTF_ABSOLUTE=&H8000 mouse_eventMOUSEEVENTF_ABSOLUTE+MOUSEEVENTF_MOVE,65535,65535,0&,0&'移动鼠标mouse_eventMOUSEEVENTF_LEFTDOWN,0&,0&,0&,0&'按下鼠标这样可省去用SetCursorPos函数,不过它不以象素为度量单位,而是
8、将长宽分别平分为65535个鼠标位置点,要注意。补充说明:参数dx--Long,根据是否指定了MOUSEEVENTF_ABSOLUTE标志,指定水平方向的绝对位置或相对运动 参数dy--Long,根据是否指定了MOUSEEVENTF_ABSOLUTE标志,指定垂直方向的绝对位置或相对运动==============================================限制鼠标活动区域函数:ClipCursor函数限制光标只能在参数lpRect给出的矩形区域内运动。声明:P