首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

Image鼠标离开事件解决思路

2013-10-29 
Image鼠标离开事件Image没有hwnd属性有其他方法能判断在Image控件上实现鼠标离开事件吗?Image鼠标离开事件

Image鼠标离开事件
Image没有hwnd属性
有其他方法能判断在Image控件上实现鼠标离开事件吗? Image鼠标离开事件
[解决办法]
如果要求不是很严,思路是:你鼠标移出image可能进入另一个控件(如Form),

你可以尝试用 Image的mousemove 和 form的mousemove 结合来做
声明一个模块变量bImageMove,用来标明是否 在image中移动过
当然,你可以根据Timer时间来进一步精确做到这一点

Private bImageMove As Boolean
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    bImageMove = True
End Sub

Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If bImageMove Then
        Debug.Print "Image move out 事件"   '这里写处理代码
    End If
    bImageMove = False
    
End Sub

[解决办法]

不太好弄。即使 Image 周边有 Form 的区域,当鼠标移动很快时,也有触发不了相关事件的时候。

可以试试鼠标进入 Image 后,启动定时器。在定时器事件中查鼠标的位置,查到移出并处理后关闭定时器。
[解决办法]
用个定时器, 获取image位置,然后倒换为屏幕坐标
定时器获取鼠标位置,再来psinrect就判断出来了...
[解决办法]
引用:
如果有很多个Image排列在窗体中,中间没有缝隙 鼠标根本接触不到Form ,谢谢还有其他的方法吗


Image本身没有鼠标事件,都是窗口的鼠标事件,不会有说的问题!你处理窗口的的鼠标位置是否在Image范围内即可

热点排行