C++ 在Ubuntu中翻译快捷键

C++ 在Ubuntu中翻译快捷键,c++,c,linux,ubuntu,C++,C,Linux,Ubuntu,我正在Ubuntu中制作一个类似记事本的程序。我的想法是,如果我的记事本程序处于打开状态,但当前未处于焦点状态,可能是我打开了一个文件夹或其他东西,而我的程序在该窗口后面,如果我想将一些数据粘贴到记事本上,然后按CTRL+P,即使记事本在该窗口后面,这些数据也会粘贴到记事本文件中 问题是,当我的记事本在窗口后面时,我不知道如何检测按下了哪些键。我怎么做?我听说有一个系统调用用于此目的。我正在用C语言编程++ 关于一个(并非罕见的)解决方案是让您的程序充当网络服务器和客户端。通过这种方式,您可以使

我正在Ubuntu中制作一个类似记事本的程序。我的想法是,如果我的记事本程序处于打开状态,但当前未处于焦点状态,可能是我打开了一个文件夹或其他东西,而我的程序在该窗口后面,如果我想将一些数据粘贴到记事本上,然后按CTRL+P,即使记事本在该窗口后面,这些数据也会粘贴到记事本文件中

问题是,当我的记事本在窗口后面时,我不知道如何检测按下了哪些键。我怎么做?我听说有一个系统调用用于此目的。我正在用C语言编程++

关于

一个(并非罕见的)解决方案是让您的程序充当网络服务器和客户端。通过这种方式,您可以使用特殊参数调用程序,这些参数被解释为要发送到当前运行的程序的命令。然后你可以制作一个标准的UbuntuUnity热键,用一个参数调用你的程序,这个参数意味着“连接到正在运行的程序并发送命令‘粘贴’”


当然,您可以使用dbus或其他RPC框架来实现这一点,而不是将其合并到仅命令行版本的程序中。

您是否有2012年的更新?我在UbuntuUnity中也有同样的问题,创建自定义快捷键,并让它向非焦点python顶级窗口发送信号,单击按钮2。