首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AxShockwaveFlash全屏时捕捉应用程序中的鼠标事件

AxShockwaveFlash全屏时捕捉应用程序中的鼠标事件
EN

Stack Overflow用户
提问于 2013-09-07 14:02:05
回答 1查看 934关注 0票数 0

我有一个应用程序,显示Flash全屏使用AxShockwaveFlash控件。

我需要在鼠标单击时关闭窗口,但是当AxShockwaveFlash控件处于活动状态时,我无法捕获鼠标单击。

单击和MouseDown事件不起作用。

在我的应用程序中,我尝试使用应用程序中的MouseDown事件,支持网格和控制‘主机’,但是没有一个接收到单击事件的通知。

由于我的应用程序的其他区域处理这个事件很好,所以它必须是Flash控件。

代码:

代码语言:javascript
复制
_flashHost = new System.Windows.Forms.Integration.WindowsFormsHost();
_axShockwaveFlash = new AxShockwaveFlashObjects.AxShockwaveFlash();
_flashHost.Child = _axShockwaveFlash;

_flashHost.Margin = new Thickness(50, 0, 0, 0);
this.FlashGrid.Children.Add(_flashHost);
_axShockwaveFlash.BeginInit();
_axShockwaveFlash.CreateControl();
_axShockwaveFlash.Menu = false;
_axShockwaveFlash.FlashVars = "start_volume=0";
_axShockwaveFlash.Movie = loadedMediaItem.LocalMediaFile.LocalPath;
_axShockwaveFlash.Play();

XAML

代码语言:javascript
复制
<Window x:Class="CorporateScreenSaver.MediaContainerWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Media" Height="421" Width="600" ShowInTaskbar="False" Topmost="True" WindowState="Maximized" ResizeMode="NoResize" WindowStyle="None"  Background="Black"  Loaded="MainWindow_OnLoaded" MouseDown="MainWindow_OnMouseDown" KeyDown="MainWindow_OnKeyDown">
    <Grid Name="MediaGrid">
        <Grid Name="FlashGrid"></Grid>
        <MediaElement Name="MediaViewPort"/>
    </Grid>
</Window>

如何通过全局钩子或对AxShockwaveFlash控件的订阅来捕获click事件?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-09 22:42:29

似乎我能捕获鼠标点击的唯一方法是使用以下方法。

http://globalmousekeyhook.codeplex.com/

效果真的很好。

代码语言:javascript
复制
using MouseKeyboardActivityMonitor;
using MouseKeyboardActivityMonitor.WinApi;
using MouseEventArgs = System.Windows.Forms.MouseEventArgs;

private readonly MouseHookListener _mMouseHookManager;


_mMouseHookManager = new MouseHookListener(new GlobalHooker()) {Enabled = true};
_mMouseHookManager.MouseDown += HookManager_MouseDown;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18674086

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档