【发布时间】:2010-10-05 15:11:04
【问题描述】:
当鼠标悬停并按下 shift 键时,我试图在图像上显示放大的叠加层。
问题是用户可能在窗口获得焦点之前就按下了 shift 键,因此 KeyDown 监控不是解决方案。
有没有办法在鼠标事件期间访问修饰键状态? 例如,在 Java 中,鼠标事件包含修饰键的标志,而在 .NET 中则不然。
【问题讨论】:
当鼠标悬停并按下 shift 键时,我试图在图像上显示放大的叠加层。
问题是用户可能在窗口获得焦点之前就按下了 shift 键,因此 KeyDown 监控不是解决方案。
有没有办法在鼠标事件期间访问修饰键状态? 例如,在 Java 中,鼠标事件包含修饰键的标志,而在 .NET 中则不然。
【问题讨论】:
尝试使用Control.ModifierKeys 属性:
if ((Control.ModifierKeys & Keys.Shift) != Keys.None)
{
// do my stuff
}
【讨论】: