【发布时间】:2014-04-17 08:23:51
【问题描述】:
我继承了PictureBox 为其添加了一些额外的功能。我正在处理鼠标按下,如下所示:
protected override void OnMouseDown(MouseEventArgs e)
{
base.OnMouseDown(e);
}
现在,如果我按下一个键(例如“T”)并同时用鼠标单击,OnMouseDown 将被不调用!如果我不按任何键,它确实被调用了。 发生了什么事?
当然,我继承了PictureBox,但这种行为毫无意义。
更新
我发现这发生在整个系统中。我忘了提到我正在使用触摸板(多点触控)。在控制面板中,我可以看到“Synaptics ClickPad V8.1”。我相信系统中有一些设置会在打字时禁用鼠标/触摸板。不过还在找。
【问题讨论】:
-
您在某处有处理按键/按下按键的处理程序吗?处理程序在单线程中执行,因此当一个正在运行时,其他处理程序无法启动。
-
为我工作。您有其他东西阻碍或直接拦截事件。
-
直接 PictureBox 是否适合您?如果不是,请在测试项目中尝试 PictureBox,如果是,请慢慢添加继承的东西,直到找到破坏它的地方。