复制粘贴,能跑就行。

using System.Windows.Interop;
using System.Runtime.InteropServices;
public MainWindow()
{InitializeComponent();IntPtr hwnd = new WindowInteropHelper(this).Handle;SetWindowLong(hwnd, (-20),0x20);
}[DllImport("user32", EntryPoint = "SetWindowLong")]
private static extern uint SetWindowLong(IntPtr hwnd, int nIndex, int NewLong);

利用SetWindowLong函数给窗口添加一个拓展样式WS_EX_TRANSPARENT,常量值为0x20,作用(机器翻译):用此参数创建的的窗口在他同一线程的窗口被绘制前将不会被绘制.这个窗口透明的显示,因为同一线程的窗口已经绘制出来。

如果是子窗口需要添加这个样式,在SetWindowLong之前需要this.Show();不然设置了没效果。子窗口代码:

InitializeComponent();
Show();
IntPtr hwnd = new WindowInteropHelper(this).Handle;
SetWindowLong(hwnd, (-20),0x20);
Hide();

【WPF】鼠标穿透窗口(类似于桌面歌词那样子)相关推荐

  1. [随笔]关于如何实现鼠标穿透窗口和窗口半透明

    资料准备 WS_EX_TRANSPARENT | WS_EX_LAYERED WM_NCHITTEST & return HTTRANSPARENT SetLayeredWindowAttri ...

  2. Simple WPF:实现一个透明、无边框、鼠标穿透的WPF窗体

    WPF 透明窗体和鼠标事件穿透 一个自定义WPF窗体的解决方案,借鉴了吕毅老师的WPF制作高性能的透明背景的异形窗口一文,并在此基础上增加了鼠标穿透的功能.可以使得透明窗体的鼠标事件穿透到下层,在下层 ...

  3. winform和wpf如何实现鼠标穿透的效果

    先看一下鼠标穿透的效果: 可以看到Form1这个程序虽然遮在了桌面的上面,但是我们还可以在窗体上点击桌面上的必应词典和网易邮箱大师,好像这个叫"Form1"的窗口被"穿透 ...

  4. C#使用Windows API实现桌面上的遮罩层(鼠标穿透)

    C#实现实现桌面上的遮罩层(鼠标穿透)主要通过一下几个API函数来实现:GetWindowLong,SetWindowLong,SetLayeredWindowAttributes.其中有一个Wind ...

  5. VC++ SetLayeredWindowAttributes 部分窗口透明鼠标穿透

    在初始化中使用下面两行代码 ModifyStyleEx(0, WS_EX_LAYERED); ::SetLayeredWindowAttributes(m_hWnd, RGB(1, 255, 0), ...

  6. WPF 程序鼠标在窗口之外的时候,控件拿到的鼠标位置在哪里?

    在 WPF 程序中,我们有 Mouse.GetPosition(IInputElement relativeTo) 方法可以拿到鼠标当前相对于某个 WPF 控件的位置,也可以通过在 MouseMove ...

  7. javaFx实现鼠标穿透画布,同时操作画布和桌面,背景透明,类似ppt批注

    系列文章专栏:javafx图形绘制.桌面录屏录音源码合集 目录 一.实现的功能和效果 二.程序实现 三.总结 一.实现的功能和效果 今天,我们要用javaFx来实现一个鼠标穿透画布的功能,该需求来自于 ...

  8. Delphi以GDI+制作桌面歌词效果

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 在Win ...

  9. GDIPlus绘制桌面歌词

    功能介绍 采用GDIPlus绘制桌面歌词,类似酷狗.QQ音乐等软件. 歌词支持纯色.两色渐变.三色渐变:支持高亮歌词. 实现方法 窗口部分:桌面歌词是个独立的背景透明窗口,可以移动位置,可以鼠标穿透. ...

  10. WPF绘制自定义窗口

    原文:WPF绘制自定义窗口 WPF是制作界面的一大利器,下面就用WPF模拟一下360的软件管理界面,360软件管理界面如下: 界面不难,主要有如下几个要素: 窗体的圆角 自定义标题栏及按钮 自定义状态 ...

最新文章

  1. 高效程序员的 7 个共同特征
  2. Cocos2d-x坐标系介绍
  3. eclipse 导入myeclipse web项目
  4. mysql存储过程into_MySQL存储过程中使用SELECT …INTO语句为变量赋值
  5. ef ddl生成不了脚本_如何使用Hibernate从Play生成DDL脚本! 框架项目
  6. React开发(244):dva概念8router
  7. 你确定自己不是那只猫吗
  8. python全栈计划_Python 全栈学习视频教程,包含了从 0-99天的全栈学习计划,估计可以学习 1024 小时。...
  9. Jmeter接口测试实例图文示例
  10. CactiEZ中文版说明
  11. 【图像分割】基于matlab分水岭算法图像分割【含Matlab源码 390期】
  12. 综合布线系统计算机网络,综合布线 计算机网络系统
  13. 自媒体原创度检测工具有哪些?这几个可以免费用
  14. 更新显卡驱动后,Windows重启卡在Logo页面
  15. 舆情分析报告写作的架构与方法|下
  16. 开源项目-CRM客户关系管理系统
  17. 专升本第一讲(计算机的“前世今生”)
  18. imx8的源码开发方式非yocto方式(三)——基于imx8的firmware-imx固件包下载与解压
  19. 脚本循环ping所有网段
  20. 常用的python标准库有哪些?

热门文章

  1. 循环删除list中多个元素
  2. Delete `␍`eslintprettier/prettier
  3. php 和 java_Java和php怎么选择??
  4. oracle的用户和mysql的用户_oracle数据库的用户以及表空间
  5. 四线温度探头怎么接线_热电阻的接线方式
  6. 风变编程python第一关_风变编程python学习心得
  7. 黑苹果内置硬盘识别成外置硬盘_压倒U盘最后一根稻草?ORICO iMatch移动固态硬盘体验...
  8. html调用js文件函数_函数式编程中的战斗机(三)--elm调用javascript的flags方式
  9. IOS-播放器开发(1)-视频基本原理
  10. linux web部署命令简单记录