| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1477 人关注过本帖
标题:关于移动鼠标的问题
只看楼主 加入收藏
renxiaoyao36
Rank: 9Rank: 9Rank: 9
来 自:七宝中学
等 级:贵宾
威 望:31
帖 子:347
专家分:1077
注 册:2014-9-18
结帖率:92.31%
收藏
已结贴  问题点数:20 回复次数:4 
关于移动鼠标的问题
Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
SetCursorPos (Screen.Width / 2), (Screen.Height / 2) '移动鼠标位置

这个代码我本意是想要将鼠标移动到屏幕正中央,可是最后的结果却是鼠标移动到了屏幕最右下角,而非中央。请问各位前辈,这是为什么呢?如何修改呢?
2016-05-19 19:50
hjxlj
Rank: 10Rank: 10Rank: 10
来 自:江西
等 级:贵宾
威 望:14
帖 子:292
专家分:1519
注 册:2013-6-25
收藏
得分:20 
如此简单的一个问题,竟然没人能给楼主解决?还是见下楼我的吧。

[此贴子已经被作者于2016-5-21 21:13编辑过]


本人QQ:775420425
2016-05-20 23:23
hjxlj
Rank: 10Rank: 10Rank: 10
来 自:江西
等 级:贵宾
威 望:14
帖 子:292
专家分:1519
注 册:2013-6-25
收藏
得分:0 
楼主按我的代码修改即可
SetCursorPos ScaleX((Screen.Width / 2), 1, 3), ScaleY((Screen.Height / 2), 1, 3)

至于原因嘛,很简单。因为SetCursorPos使用的坐标是以像素为单位,而Screen的Width和Height属性是以缇为单位,所以必须将Screen的Width和Height属性值转换为像素才行。代码中ScaleX和ScaleY就是完成缇到像素的单位转换的。

本人QQ:775420425
2016-05-21 10:19
renxiaoyao36
Rank: 9Rank: 9Rank: 9
来 自:七宝中学
等 级:贵宾
威 望:31
帖 子:347
专家分:1077
注 册:2014-9-18
收藏
得分:0 
谢谢回答,API方面我没有多大涉入,因为平时用不到嘛,现在一用就发生这么个低等的错误,让大家见笑了……

另外,楼上能帮忙说一下ScaleX这个函数的参数么?

[此贴子已经被作者于2016-5-21 21:29编辑过]


编程蛋疼的不是枯燥,而是辛辛苦苦编完几百行的代码,运行,“Runtime Error “xxx””。
2016-05-21 21:28
hjxlj
Rank: 10Rank: 10Rank: 10
来 自:江西
等 级:贵宾
威 望:14
帖 子:292
专家分:1519
注 册:2013-6-25
收藏
得分:0 
回复 4楼 renxiaoyao36
这个百度一下,你就知道,我就实在没必要再打字介绍了。

本人QQ:775420425
2016-05-22 01:02
快速回复:关于移动鼠标的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018795 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved