有没有办法用C模拟
Linux中的按键?
在我的特定情况下,我使用的是Ubuntu 9.04并且需要一个简单的应用程序,在启动时调用“暂停”按钮.这将在Firefox中使用Javascript刷新iframe.
解决方法
我认为你的意思是“X11应用程序” – 从你的描述中你并不完全清楚你打算做什么.下面的代码片段将“暂停”键代码发送到当前在X11下使用XTest扩展键盘输入焦点的应用程序 – 从我所读到的这是“伪造”键盘事件的最兼容的方式.看看你是否可以将它应用到您的场景中(没有错误检查XOpenDisplay是否成功,以使其更简单).
#include <X11/Xlib.h> #include <X11/keysym.h> #include <X11/extensions/XTest.h> ... Display *display; unsigned int keycode; display = XOpenDisplay(NULL); ... keycode = XKeysymToKeycode(display,XK_Pause); XTestFakeKeyEvent(display,keycode,True,0); XTestFakeKeyEvent(display,False,0); XFlush(display);
您需要链接-lX11 -lXtst.
显然火狐需要在那个时候关注.
但是,我很想知道你要完成的更大任务是什么 – 我怀疑应该有一个比欺骗按键事件更优雅的解决方案.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。