Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 触发特定次数的MouseMove事件_C#_Winforms_Menu - Fatal编程技术网

C# 触发特定次数的MouseMove事件

C# 触发特定次数的MouseMove事件,c#,winforms,menu,C#,Winforms,Menu,我有一个自定义的CustomToolStripMenuItem,它是从ToolStripMenuItem类派生的。在自定义类“CustomToolStripMenuItem”中,我覆盖OnPaint()、OnMouseMove()和OnMouseDown()事件。 在这里,我想添加一个矩形显示在每个子菜单上,以从自定义工具条菜单项中删除该菜单项。当用户将鼠标移动到矩形区域时,它将更改背景颜色,这表明用户希望删除该项。我通过读取xml文件来添加这些菜单 这里的主要问题是,当我将鼠标从一个菜单项快速

我有一个自定义的CustomToolStripMenuItem,它是从ToolStripMenuItem类派生的。在自定义类“CustomToolStripMenuItem”中,我覆盖OnPaint()、OnMouseMove()和OnMouseDown()事件。 在这里,我想添加一个矩形显示在每个子菜单上,以从自定义工具条菜单项中删除该菜单项。当用户将鼠标移动到矩形区域时,它将更改背景颜色,这表明用户希望删除该项。我通过读取xml文件来添加这些菜单

这里的主要问题是,当我将鼠标从一个菜单项快速移动到另一个菜单项时,上一个菜单项也显示为选中如何确保当鼠标移动到其他菜单项时,上一个选择应该删除。

我想,我需要在特定的时间重复鼠标移动事件(xml文件中的项目总数),但是如何处理鼠标事件???
有什么帮助吗?

如果快速鼠标移动绕过当前鼠标移动事件,您也可以将事件与当前事件一起使用

嗯,好主意。但是,如何将PaintEventArgs传递给LeaveEvent。因为,我需要重新填充矩形以显示禁用该项。但是,在这种情况下,我们无法访问PaintEventArgs。在LeaveEvent中获得PaintEventArgs有什么诀窍吗?是的!定义PaintEventArgs pea;并将e分配给pea in paint事件处理程序,然后可以在事件中使用pea。如果您只需要来自PaintEventArgs的图形,则可以跳过此解决方案,并在需要时使用CreateGraphics控制方法:)