Project1

标题: 如何判断光标是否移动和改变? [打印本页]

作者: 果冻叮当猫    时间: 2008-9-22 20:32
标题: 如何判断光标是否移动和改变?
如题! [LINE]1,#dddddd[/LINE]此贴于 2008-9-25 11:35:27 被版主darkten提醒,请楼主看到后对本贴做出回应。 [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 小无    时间: 2008-9-22 21:43
提示: 作者被禁止或删除 内容自动屏蔽
作者: 果冻叮当猫    时间: 2008-9-23 03:34
以下引用小无于2008-9-22 13:43:03的发言:

#API声明
$GetCursorPos = Win32API.new("user32","GetCursorPos", 'p', 'i')
$ScreenToClient = Win32API.new("user32","ScreenToClient", 'ip', 'i')
$GetActiveWindow = Win32API.new("user32","GetActiveWindow", nil, 'l')
$Window_HWND = $GetActiveWindow.call #取得窗口句柄

module Cur_t #模块
def Get_Cur_Pos  #取得鼠标XY的函数
   point_var = [0, 0].pack('ll')
   if $GetCursorPos.call(point_var) != 0
     if $ScreenToClient.call($Window_HWND, point_var) != 0
       x, y = point_var.unpack('ll')
     if (x < 0) or (x > 10000) then x = 0 end
     if (y < 0) or (y > 10000) then y = 0 end
     if x > 640 then x = 640 end
     if y > 480 then y = 480 end
       return x, y
     else
       return 0, 0
     end
   else
     return 0, 0
   end
end
end

$mx, $my = Cur_t.Get_Cur_Pos # 先值入XY $mx为当前鼠标X $my为鼠标Y
loop do #循环开始
tx, ty = Cur_t.Get_Cur_Pos #取得当前鼠标XY存入临时变量
if (tx != $mx) and (ty @= $my) #检查鼠标是否移动过
    #是的定义在这
end
$mx, $my = Cur_t.Get_Cur_Pos #刷新变量
end


[本贴由作者于 2008-9-22 13:44:33 最后编辑]

大概应该如何使用!能不能简单介绍一下?谢谢你

作者: 小无    时间: 2008-9-24 19:30
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1