如何在VB.NET中跟踪鼠标单击和拖动事件?

首先,我想知道鼠标是否在某个区域.
然后,我想检查鼠标是否按住左键.
我想检查只要左按钮关闭,我想跟踪鼠标的位置.
最后,检查左按钮何时释放.

那么,简而言之,我应该从哪里开始跟踪表单中的鼠标事件?

解决方法

一般来说,当发生鼠标按下事件时,您需要捕获鼠标.然后,即使鼠标离开捕获鼠标的控件区域,您也会收到鼠标移动事件.您可以在鼠标移动事件中计算delta.第一次增量超过系统定义的“拖动区域”时会发生拖动.收到鼠标按下事件后,停止拖动操作.

Windows窗体中,查看Control类上的MouseDown,MouseMove和MouseUp事件. MouseEventArgs将包含X / Y坐标.要捕获或释放鼠标,请分别将Capture属性设置为true或false.如果您没有捕获鼠标,那么如果鼠标被释放到控件的边界之外,则不会收到MouseMove或MouseUp事件.

最后,要确定在开始拖动操作之前应允许鼠标移动的最小“距离”,请查看SystemInformation.DragSize属性.

希望这可以帮助.

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...