用于检测图片框上鼠标拖动的事件处理程序(winforms,c#)

Win*_*der 3 .net c# event-handling winforms

我正在制作简单的绘画应用程序,只要有人按住鼠标按钮并拖动(就像在窗口绘制中一样),就会绘制一条线.

但是,我很难找到合适的事件处理程序.MouseDown根本无法正常工作,只有按下鼠标,MouseClick才会记下点.

在这件事上需要帮助.

谢谢.

Mir*_*Mir 10

处理MouseDown并将布尔变量设置为true.处理MouseMove并且,如果变量设置为true并且鼠标的移动高于所需的阈值,则操作.处理MouseUp并将该变量设置为false.

例:

bool _mousePressed;
private void OnMouseDown(object sender, MouseEventArgs e)
{
    _mousePressed = true;
}

private void OnMouseMove(object sender, MouseEventArgs e)
{
    if (_mousePressed)
    {
        //Operate
    }
}

private void OnMouseUp(object sender, MouseEventArgs e)
{
    _mousePressed = false;
}
Run Code Online (Sandbox Code Playgroud)