首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

dotnet X11 设置窗口鼠标触摸命中穿透

本文记录如何在 X11 应用里面,使用 XShapeCombineRegion 方法配置一个 X11 窗口支持和 Win32 窗口一样的命中测试穿透功能,即对应 Win32 的 WS_EX_TRANSPARENT...的鼠标、触摸等的点击等动作的穿透功能,可以实现在窗口中挖空一块范围直接穿透到后面的窗口 在 X11 窗口中,想要实现让窗口不可命中,即所有的鼠标、触摸等的事件穿透到后面的窗口上,可以采用 libXext.so...提供的 XShapeCombineRegion 方法,也可以使用有争议的 libXfixes.so 提供的 XFixesSetWindowShapeRegion 方法 通过以上两个方法即可让 X11...让这个窗口不参与到交互里面 使用比较有争议的 libXfixes.so 提供的 XFixesSetWindowShapeRegion 方法的示例代码如下 // 以下的 childWindowHandle 是一个 X11...libXext.so.so: 无法打开共享对象文件: 没有那个文件或目录 /home/uos/Downloads/lin/liblibXext.so.so: 无法打开共享对象文件: 没有那个文件或目录 at CPF.Linux.XLib.XShapeCombineRegion

11910

dotnet X11 的多屏触摸行为测试

故事的背景是我在给 Avalonia 加上触摸尺寸的支持时,代码审查过程中大佬提出了在多屏上的 X11 行为问题,为此我找了两个触摸屏进行测试 X11 的多屏触摸行为。...由于 Min 常是 0 因此在计算中常被忽略 但值得一提的是在 X11 里面,根据 https://www.kernel.org/doc/html/latest/input/multi-touch-protocol.html...文档,所获取的是椭圆长轴,将其当成触摸宽度是不准确的 校准屏幕 在我的设备上,发现触摸屏的触摸输入和对应的屏幕显示没有对齐,需要根据以下大佬们的博客进行修复 Linux处理多触屏的终极解决方案 香风家的火柴盒...github.com/lindexi/lindexi_gd.git git pull origin dedfc0ec3a3c8d04e7bec5276fe5bcaa926fe6e9 获取代码之后,进入 X11

9610

dotnet C# 设置 X11 应用窗口背景透明

本文将告诉大家如何在 X11 里面设置窗口透明 不同于在 WPF 里面可以使用 AllowsTransparency 简单方便的设置透明,在 X11 里面设置窗口透明的方法比较绕。...PropertyGroup> 以上的 csproj 项目文件代码里和空控制台核心不同在于使用 AllowUnsafeBlocks 开启不安全代码 打开 Program.cs 文件,开始编写 X11...透明窗口示例应用代码 按照 X11 的基础使用方法,先获取 Display 和 Screen 和 RootWindow 对象/指针,代码如下 var display = XOpenDisplay(0)...{ break; } } return visual->visual; } 获取 Visual 指针的方法就是本文的核心逻辑了,也是 X11...return _addr_GetVisualFromFBConfig(@dpy, @config); } // Ignores egl functions. // On some Linux

11410

学习 CPF 框架笔记 了解 X11 绘制图片方法

框架,支持Windows、Mac、Linux系统,其中 Linux 系统方面支持国产化平台,支持龙芯、飞腾、兆芯、海光等CPU平台。...在 学习 CPF 框架笔记 了解 X11 窗口和消息基础知识 的基础上,假定当前已创建完成了窗口,准备好了事件监听 在 X11 执行绘制图片需要在 Expose 曝光之后进行,可在 XSelectInput...而不是读取本机的图片文件,因为读取图片文件还有一个解码的过程,解码过程和 X11 没什么关系,为了让本文示例更贴近 X11 的绘制图片,本文这里就选择自己创建图片像素 byte 数组,填充随意的数据假装是图片...,导致 X11 里面存放了错误的指针地址,可能造成段错误等。...; using CPF.Linux; using System.Runtime.InteropServices; XInitThreads(); var display = XOpenDisplay(

12810
领券