C#按住鼠标事件

时间:2011-07-08 11:28:17

标签: c# windows mouseevent

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

3 个答案:

答案 0 :(得分:5)

您可以在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);
    }
}

答案 1 :(得分:2)

跟踪鼠标并向上鼠标事件以设置变量,确定是否按下鼠标按钮(即在鼠标向上设置为未设置)然后在mouse_move中检查此变量

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

答案 2 :(得分:1)

使用

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

        }
 }

就像这样,在第二个if中,当你的mosue移动并且鼠标按钮关闭时,你会有一个条件。

相关问题