我正在制作简单的绘图应用程序,只要有人按住鼠标按钮并拖动(就像在 Windows 绘图中一样),就会在其中绘制一条线。
但是我很难为此找到合适的事件处理程序。 MouseDown 根本不起作用,而 MouseClick 只是在我按下鼠标时记下点。
在这件事上需要帮助。
谢谢。
最佳答案
处理 MouseDown
并将 bool 变量设置为 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;
}
关于c# - 检测图片框上的鼠标拖动的事件处理程序(winforms,c#),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13917481/