不知道本问题是否简单???第一个解决问题者,得满分!

chendjin 2004-08-28 04:15:04
我做了一个屏闪,可屏闪结束后,鼠标本来在屏幕中心却突然停靠屏幕左边,这是怎么回事?
能否用代码控制回到屏幕中心,当然这点小事移动鼠标即可,但我想更人性化一点!
...全文
112 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainstormmaster 2004-08-28
  • 打赏
  • 举报
回复
你要用屏幕坐标:

Option Explicit
Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Private Sub Command1_Click()
Dim x As Long
Dim y As Long
x = Screen.Width \ Screen.TwipsPerPixelX
y = Screen.Height \ Screen.TwipsPerPixelY
SetCursorPos x \ 2, y \ 2
End Sub

chendjin 2004-08-28
  • 打赏
  • 举报
回复
to rainstormmaster:
通过如下调用,鼠标指针并未停在屏幕中央,而是移动鼠标后才出现在右下
角,怎么解释啦?FrmLogon窗体停靠屏幕中央。
Call SetCursorPos(FrmLogon.Left + FrmLogon.Width / 2, FrmLogon.Top + FrmLogon.Height / 2)
rainstormmaster 2004-08-28
  • 打赏
  • 举报
回复
用api函数SetCursorPos:
【VB声明】
Private Declare Function SetCursorPos Lib "user32" Alias "SetCursorPos" (ByVal x As Long, ByVal y As Long) As Long

【说明】
设置指针的位置

【返回值】
Long,非零表示成功,零表示失败。会设置GetLastError

【参数表】
x,y ------------ 鼠标指针在屏幕像素坐标系统中的X,Y位置

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧