如何在Linux中做一个假的鼠标滚轮移动

2023-12-22

我正在尝试模拟键盘和鼠标事件,我已经成功制作了假键盘 keydown、keyup。假鼠标按钮按下、向上和假鼠标移动,但我没有找到如何做假鼠标滚轮移动,有人可以向我解释一个在 C++ 中执行此操作的简单方法吗?

鼠标移动和鼠标按钮按下:

Display *dpy = XOpenDisplay(NULL);
XTestFakeMotionEvent(dpy, -1, 50, 50, 0);
XTestFakeButtonEvent(dpy, Button1, true, 0);
XTestFakeButtonEvent(dpy, Button1, false, 0);
XFlush(dpy);
XCloseDisplay(dpy);

键盘按键:

Display *dpy = XOpenDisplay(NULL);
unsigned int keycode = XKeysymToKeycode(dpy, XK_Super_L);
XTestFakeKeyEvent(dpy, keycode, true, 0);
XTestFakeKeyEvent(dpy, keycode, false, 0);
XFlush(dpy);
XCloseDisplay(dpy);

Linux 上的鼠标滚轮步骤不就是按下另一个按钮吗?我现在无法为您测试这一点,但我记得在我的系统上滚动鼠标滚轮只会生成按钮事件。您可以通过运行该程序在您的系统上进行测试xev显示 X 个输入事件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Linux中做一个假的鼠标滚轮移动 的相关文章

  • Qt - 无法让 lambda 工作[重复]

    这个问题在这里已经有答案了 我有以下功能 我想在其中修剪我的std set
  • 获取两个字符串之间的公共部分c# [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我需要的是获取两个单词之间的共同部分并获取差异 例子 场景1 word1 感言 word2 Test 将返回 公共部分Test 不同之
  • try-catch 中未处理的异常

    try list from XElement e in d Descendants wix File where e Attribute Name Value Contains temp Name e Parent Parent Attri
  • TextBox 焦点的 WinForms 事件?

    我想添加一个偶数TextBox当它有焦点时 我知道我可以用一个简单的方法来做到这一点textbox1 Focus并检查布尔值 但我不想那样做 我想这样做 this tGID Focus new System EventHandler thi
  • 调试内存不足异常

    在修复我制作的小型 ASP NET C Web 应用程序的错误时 我遇到了 OutOfMemoryException 没有关于在哪里查看的提示 因为这是一个编译时错误 如何诊断此异常 我假设这正是内存分析发挥作用的地方 有小费吗 Thank
  • ZLIB 解压缩

    我编写了一个小型应用程序 该应用程序应该解压缩以 gzip deflate 格式编码的数据 为了实现这一点 我使用 ZLIB 库 使用解压缩功能 问题是这个功能不起作用 换句话说 数据不是未压缩的 我在这里发布代码 int decompre
  • 获取从属性构造函数内部应用到哪个属性的成员?

    我有一个自定义属性 在自定义属性的构造函数内 我想将属性的属性值设置为属性所应用到的属性的类型 是否有某种方式可以访问该属性所应用到的成员从我的属性类内部 可以从 NET 4 5 using CallerMemberName Somethi
  • 如何用 kevent() 替换 select() 以获得更高的性能?

    来自Kqueue 维基百科页面 http en wikipedia org wiki Kqueue Kqueue 在内核和用户空间之间提供高效的输入和输出事件管道 因此 可以修改事件过滤器以及接收待处理事件 同时每次主事件循环迭代仅使用对
  • 是否有与 C++11 emplace/emplace_back 函数类似的 C# 函数?

    从 C 11 开始 可以写类似的东西 include
  • Xamarin Android:获取内存中的所有进程

    有没有办法读取所有进程 而不仅仅是正在运行的进程 如果我对 Android 的理解正确的话 一次只有一个进程在运行 其他所有进程都被冻结 后台进程被忽略 您可以使用以下代码片段获取当前正在运行的所有 Android 应用程序进程 Activ
  • 事件日志写入错误

    很简单 我想向事件日志写入一些内容 protected override void OnStop TODO Add code here to perform any tear down necessary to stop your serv
  • 通过不同 DLL 或 EXE 中的指针或引用访问 STL 对象时发生访问冲突

    我在使用旧版 VC6 时遇到以下问题 我只是无法切换到现代编译器 因为我正在处理遗留代码库 http support microsoft com kb 172396 http support microsoft com kb 172396
  • C# 搜索目录中包含字符串的所有文件,然后返回该字符串

    使用用户在文本框中输入的内容 我想搜索目录中的哪个文件包含该文本 然后我想解析出信息 但我似乎找不到该字符串或至少返回信息 任何帮助将不胜感激 我当前的代码 private void btnSearchSerial Click object
  • 32位PPC rlwinm指令

    我在理解上有点困难rlwinmPPC 汇编指令 旋转左字立即然后与掩码 我正在尝试反转函数的这一部分 rlwinm r3 r3 0 28 28 我已经知道什么了r3 is r3在本例中是一个 4 字节整数 但我不确定这条指令到底是什么rlw
  • Fluent NHibernate 日期时间 UTC

    我想创建一个流畅的 nhibernate 映射来通过以下方式映射 DateTime 字段 保存时 保存 UTC 值 读取时 调整为本地时区值 实现此映射的最佳方法是什么 就我个人而言 我会将日期存储在 UTC 格式的对象中 然后在读 写时在
  • 如何查明CONFIG_FANOTIFY_ACCESS_PERMISSIONS是否启用?

    我想利用fanotify 7 http man7 org linux man pages man7 fanotify 7 html我遇到的问题是在某些内核上CONFIG FANOTIFY ACCESS PERMISSIONS不起作用 虽然C
  • 以编程方式使用自定义元素创建网格

    我正在尝试以编程方式创建一个网格 并将自定义控件作为子项附加到网格中 作为 2x2 矩阵中的第 0 行第 0 列 为了让事情变得更棘手 我使用了 MVVM 设计模式 下面是一些代码可以帮助大家理解这个想法 应用程序 xaml cs base
  • 在基类集合上调用派生方法

    我有一个名为 A 的抽象类 以及实现 A 的其他类 B C D E 我的派生类持有不同类型的值 我还有一个 A 对象的列表 abstract class A class B class A public int val get privat
  • 如何确定母版页中正在显示哪个子页?

    我正在母版页上编写代码 我需要知道正在显示哪个子 内容 页面 我怎样才能以编程方式做到这一点 我用这个 string pageName this ContentPlaceHolder1 Page GetType FullName 它以 AS
  • WPF/数据集:如何通过 XAML 将相关表中的数据绑定到数据网格列中?

    我正在使用 WPF DataSet 连接到 SQL Server Express XAML 和 C Visual Studio 2013 Express 我从名为 BankNoteBook 的现有 SQL Server Express 数据

随机推荐

  • 从 PostgreSQL 中的时间戳获取日期

    我有一个 PostgreSQL 时间戳 2009 12 22 11 01 46 我需要将其更改为 2009 12 22 这样我就可以比较日期postgreSQL 我怎样才能实现这个转变 将其投射到date SELECT yourtimest
  • VB.NET 管理对象帮助

    我正在尝试创建一个函数来将映射的驱动器路径转换为 UNC 路径 我做了一些谷歌搜索并发现several http groups google nu group DotNetDevelopment msg 6caffd33ad1eae11 不
  • iis7上的gzip http压缩问题

    我的网络托管提供商正在运行 IIS7 但我在让 gzip 压缩正常工作方面遇到了很多麻烦 主机管理员说已安装压缩 我可以使用一些在线检查服务确认压缩 但不能使用其他服务 PageSpeed Firefox 插件还表示该网站未压缩 我个人坐在
  • 无法分配给函数调用是什么意思(python)[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我最近开始学习Python 我被分配的任务是创建一个在字典中平均成绩的函数 lloyd name Lloyd homework 9
  • 在 argparse 中使用变量 arg 名称

    我有一个上游系统 它使用不同的参数名称调用我的程序 例子 foo xyz1 10 xyz2 25 xyz3 31 我希望 argparsing 的结果为 xyz 10 25 31 我的参数名称有一个共同的前缀 但不幸的是至少必须有不同的数字
  • 使用 JSP 列出服务器目录的内容

    我在服务器上的以下目录中有文件 D tomcat8 webapps schema files 我想列出上面目录中存在的所有文件 我尝试过的 它不起作用 但是 如果我将文件存储在应用程序本身的 WEB INF filefolder 中 则以下
  • 如何在容器上使用本地文件?

    我正在尝试创建一个容器来运行程序 我正在使用预配置映像 现在我需要运行该程序 然而 它是一个机器学习程序 我需要计算机中的数据集才能运行 文件太大 无法复制到容器中 最好是在容器中运行的程序在我的计算机的本地目录中搜索数据集 但我不知道如何
  • 基于字符向量进行子集化时 knit_expand 失败

    我本质上是想修改这个答案 https stackoverflow com a 14368148 2726564以编程方式生成带有变量每个级别的图的块 然而 在我的特定情况下 我传递了一个用于后续子集设置的字符向量 这似乎是代码失败的根源 M
  • 如何在 C# 中以编程方式读取 sql server mdf header 中的日志文件信息

    我需要以编程方式附加数据库 但日志文件命名约定似乎不同 例如 database1 mdf has database1 ldf database2 mdf has database2 log ldf等等 所以 我的猜测是有关日志文件的信息将位
  • 导出 webpack 包/前置 module.exports?避免节点中出现空对象?

    我试图将我的bundle js放入我的Node服务器 但显然webpack包缺少一个module exports 在顶部的所有捆绑代码之前 我可以手动放置module exports 到这个捆绑包中 但必须有一种编程方式来指定该捆绑包应该是
  • Wpf 使用 MvvmCross 进行多个嵌套用户控件

    我是新来的MvvmCross但我正在与mvvm一阵子 我知道如何使用嵌套用户控件来组合用户控件 现在与mvvmcross我被困在另一个用户控件中显示两个或多个用户控件 我不使用任何其他框架MvvmCross 我的根视图如下所示
  • 使用 Jquery 调整 Html 表的行和列大小

    我必须调整 HTML 表格行 列的宽度和高度 现在我使用单独的插件来调整列宽插件链接 http quocity com colresizable 并单独的jquery函数来调整rowHeight MatrixTabletr resizabl
  • Javascript require 方法未找到 axios 模块

    我正在为 gmail 创建一个 chrome 扩展 我已经使用 npm install axios 安装了 axios 并创建了一个包含该模块的 node modules 文件夹 然后 我尝试将该模块包含在我的 extension js 文
  • MatSort 显示了箭头,但它实际上并未对数据进行排序

    我在这个项目中使用了很多表 并且 MatSort 在所有其他组件中都运行良好 但是 我创建了这个新组件 尽管单击表标题时可以显示箭头 但数据本身并未排序 我将项目的每一行与 Sort Header Angular 演示以及已经运行良好的组件
  • 为什么我不能单独打印复制的字符串? [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 string s 1 23 string a a 0 s 2 a 1 s 3 cout lt
  • 查找所有未使用的变量

    通常 在 Netbeans 中很容易看到未使用的变量 只是一条灰色的波浪线 但是我如何在我的项目或单个类中找到所有这些未使用的变量呢 Reason 我正在调试一个有大量复制和粘贴的代码库 但做得不够仔细 复制粘贴后存在许多未替换为正确变量的
  • Windows 7:属性处理程序在资源管理器中工作,但在 FileOpenDialog 中不起作用?

    致力于为 Windows 7 中的自定义文件类型编写自定义属性处理程序 我已经安装了 Windows 7 SDK 并构建了示例属性处理程序 注册处理程序后 它在 Windows 资源管理器中运行良好 但在通用文件打开对话框中 自定义值不会出
  • JavaScript 中的大括号变量

    我在 ExtJS 中经常遇到这种情况 我想知道它是从哪里来的 我有一个这样的例子 view new Ext grid GroupingView forceFit true groupTextTpl text values rs length
  • Thymeleaf + Spring-Boot - 为什么我无法访问静态资源?

    我的项目树如下所示 我现在可以访问模板 但无法加载 CSS 图像和 JS 等静态资源 我有一个common html我在其中声明所有静态资源的片段 例如 我包含的标题片段common html像这样 page body A de
  • 如何在Linux中做一个假的鼠标滚轮移动

    我正在尝试模拟键盘和鼠标事件 我已经成功制作了假键盘 keydown keyup 假鼠标按钮按下 向上和假鼠标移动 但我没有找到如何做假鼠标滚轮移动 有人可以向我解释一个在 C 中执行此操作的简单方法吗 鼠标移动和鼠标按钮按下 Displa