我有一个Windows表单应用程序,它完成一个简单的任务:用户在主表单中选择一个视频,然后应用程序弹出一个新表单,其中包含一个Shockwave Flash对象来重现它。
我现在想要做的是,当用户滚动鼠标滚轮时,在电影时间线中移动。问题是,Flash对象一弹出就会抢走窗体的焦点,而且它不支持鼠标滚轮事件。
除了挂钩MouseWheel事件并在弹出窗口具有焦点时将其重定向到应用程序之外,还有什么方法可以做到这一点吗?
发布于 2012-10-21 02:39:44
Flash显示的窗口归另一个进程所有。这使得处理消息变得困难,您至少需要一个低级鼠标钩子才能在鼠标消息消失到其他进程之前查看它。
样板代码是available here。请注意,它有一个错误,使其无法在.NET 4和更高版本上工作,有关解决方法,请参阅this answer。
https://stackoverflow.com/questions/12900566
复制相似问题