按住鼠标事件

本文关键字:事件 鼠标 | 更新日期: 2023-09-27 18:01:28

我有一个mousemove事件,它获取光标的位置并将其输出到两个标签(X和Y),当我悬停在周围时,值会动态变化。我有一个mousedown事件,当单击该事件时,将相同的值输出到文本框中。我如何结合mousedown和mousemove事件,以便当我悬停并按住鼠标按钮时,文本框的值随着我的移动而动态变化。

按住鼠标事件

您可以在Move事件处理程序中询问鼠标按钮,即:

void Form1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
    if (e.Button == MouseButtons.Left) {
        String tipText = String.Format("({0}, {1})", e.X, e.Y);
        trackTip.Show(tipText, this, e.Location);
    }
}

跟踪鼠标向下和鼠标向上事件以设置一个变量来确定鼠标按钮是否被按下(即set in down unset in mouse up),然后在mouse_move

中检查这个变量

见http://msdn.microsoft.com/en-us/library/system.windows.forms.control.mousebuttons.aspx例如

使用

 private void OnMouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
 {
        if (e.Button == System.Windows.Forms.MouseButtons.Left)
        {
        }
 }
像这样的

,在第二个if中,你会有一个条件,当你的鼠标移动鼠标按钮按下