0

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

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

问候

4

1 回答 1

0

一种(不常见的)解决方案是让您的程序充当网络服务器客户端。这样,您可以使用特殊参数调用程序,这些参数被解释为发送到当前运行程序的命令。然后,您可以创建一个标准的 Ubuntu Unity 热键,该热键使用一个参数来调用您的程序,该参数表示“连接到正在运行的程序并发送命令‘粘贴’”。

当然,您可以利用 dbus 或其他 RPC 框架来执行此操作,而不是将其合并到程序的仅命令行版本中。

于 2012-10-17T15:38:13.707 回答