在wpf中需要用到flash播放swf或者图片,需要使用

AxShockwaveFlashObjects.dll和ShockwaveFlashObjects.dll

在项目中使用的时候遇到

问题1.使用WindowsFormsHost总是置顶的问题,到目前为止没有很好的解决

问题2.就是AxShockwaveFlash取消鼠标右键

屏蔽掉flash右键方法:

重写AxShockwaveFlash

  1. public partial class MyShockwaveFlash : AxShockwaveFlash
  2. {
  3. public event MouseEventHandler MouseRightDown;
  4. public delegate void MouseEventHandler(object sender, System.Windows.Forms.MouseEventArgs e);
  5. private const int WM_LBUTTONDOWN = 0x0201;
  6. private const int WM_RBUTTONDOWN = 0x0204;
  7.  
  8. protected override void WndProc(ref Message m)
  9. {
  10. switch (m.Msg)
  11. {
  12. case WM_RBUTTONDOWN:
  13. Int16 x = (Int16)m.LParam;
  14. Int16 y = (Int16)((int)m.LParam >> );
  15. MouseRightDown(this, new System.Windows.Forms.MouseEventArgs(System.Windows.Forms.MouseButtons.Right, , x, y, ));
  16. break;
  17. }
  18. if (m.Msg == WM_RBUTTONDOWN)
  19. {
  20. return;
  21. }
  22. base.WndProc(ref m);
  23. }
  24. }

然后使用方法如下:

  1. private void MediaElementControl()
  2. {
  3. FlashPlayer = new MyShockwaveFlash();
  4. wfhFlash.Child = FlashPlayer;
  5. FlashPlayer.Movie = AppDomain.CurrentDomain.BaseDirectory + "main.swf";
  6. FlashPlayer.MouseRightDown += new MyShockwaveFlash.MouseEventHandler(FlashPlayer_MouseRightDown);
  7. }
  8.  
  9. void FlashPlayer_MouseRightDown(object sender, System.Windows.Forms.MouseEventArgs e)
  10. {
  11. //这里您可以加入自己的处理或者其他您想处理的代码//System.Windows.MessageBox.Show("asfasdfasdf");
  12. return;
  13. }

最后问题2 顺利得以解决,但是对于问题1目前还没有找到很好的解决方法,哪位朋友如果有解决方法或者思路欢迎讨论交流或者留言均可,谢谢。

wpf 中AxShockwaveFlash重写以及屏蔽鼠标右键的更多相关文章

  1. 在Google Chrome中快速解除网页屏蔽鼠标右键、复制等限制

    第一步,将书签栏设置为显示状态!   第二步,添加新书签——>在标签栏点击右键,选择“添加网页”. 第三步,设置新书签的内容. 1.起名.这个凭个人爱好吧 2.网址栏输入: javascript ...

  2. C#引用CefSharp并屏蔽鼠标右键和禁止拖动放置事件

    原文:C#引用CefSharp并屏蔽鼠标右键和禁止拖动放置事件 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u013564470/article/ ...

  3. 转:js小技巧 ,将彻底屏蔽鼠标右键,可用于Table ,取消选取、防止复制,IE地址栏前换成自己的图标

    1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键<table border oncontextmenu= ...

  4. 屏蔽鼠标右键功能JS

    <script language="Javascript">     function hiderightKey(){    return false; } docum ...

  5. IE屏蔽鼠标右键、禁止复制粘贴等功能

    <body oncontextmenu="return false" onselectstart="return false" ondragstart=& ...

  6. Javascript屏蔽鼠标右键-超简单,不过还是记录一下

    Javascript屏蔽鼠标右键,其实作用也不大,也许是为了防止别人查看源代码,其实想查看源代码有多种途径,未必需要通过鼠标右键.不过当我们自定义鼠标右键弹出菜单时,也许需要这些. 下面是源码: 1 ...

  7. C# winform 屏蔽鼠标右键 spreadsheet Gear 屏蔽鼠标右键菜单

    今天用到spreadsheetGear 插件,然后右键有插件自己的菜单.都是英文的,而且还能打开新的窗体.嵌到程序里面,不太合适,所以着手屏蔽. 刚开始用的Mouse_up,虽然能捕获事件,但是没有K ...

  8. html屏蔽鼠标右键

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. JS屏蔽鼠标右键

    //方法1: function stop() {    return false;}document.oncontextmenu = stop;//方法2: window.document.oncon ...

随机推荐

  1. 菜鸟系列之C/C++经典试题(三)

    设计包括min函数的栈 题目:定义栈的数据结构,要求加入一个min函数,可以得到栈的最小元素.要求函数min.push以及pop的时间复杂度都是O(1). 分析:这是2006年google的一道面试题 ...

  2. Codeforces 558C Amr and Chemistry

    题意: n个数.每次能够选一个数 让其 *=2 或者 /=2 问至少操作多少次使得全部数相等. 思路: 对于每一个数,计算出这个数能够变成哪些数,以及变成那个数的最小步数,用两个数组保存 cnt[i] ...

  3. iOS UILabel换行同时修改字体大小颜色

    UIButton *onlyPriceBtn = [UIButton buttonWithType:UIButtonTypeCustom]; onlyPriceBtn.layer.borderColo ...

  4. 基于HTML5 Canvas和jQuery 的绘图工具的实现

    简单介绍 HTML5 提供了强大的Canvas元素.使用Canvas并结合Javascript 能够实现一些很强大的功能.本文就介绍一下基于HTML5 Canvas 的绘图工具的实现.废话少说,先看成 ...

  5. VUE 之 路由 VueRouter

    1.VueRouter的安装 1.1.https://unpkg.com/vue-router/dist/vue-router.js下载安装. 1.2.<script src="./s ...

  6. org.apache.flume.EventDeliveryException: NettyAvroRpcClient { host: hadoop1, port: 41414 }: Failed to send event

    org.apache.flume.EventDeliveryException: NettyAvroRpcClient { host: hadoop1, port: 41414 }: Failed t ...

  7. hadoop 集群搭建 配置 spark yarn 对效率的提升永无止境

    [手动验证:任意2个节点间是否实现 双向 ssh免密登录] 弄懂通信原理和集群的容错性 任意2个节点间实现双向 ssh免密登录,默认在~目录下 [实现上步后,在其中任一节点安装\配置hadoop后,可 ...

  8. filename extension

    题目描述 Please create a function to extract the filename extension from the given path,return the extra ...

  9. Struts错误信息回传

    <td height="20" align="center" class="loginMiddleDiv_loginInfo_window_wa ...

  10. MAC Safari上网弹窗弹广告的最新有效解决方法

    7.3更新: 之前更改DNS好了一段时间,最近在打开其它网页时还是会弹广告: 最终解决方法: 安装MALWAREBYTES 3清理一下: 网址:Free Cyber Security & An ...