Python 使ctrl-v粘贴从pygtk应用程序发生到另一个窗口(在Linux中)

Python 使ctrl-v粘贴从pygtk应用程序发生到另一个窗口(在Linux中),python,linux,gtk,pygtk,Python,Linux,Gtk,Pygtk,我使用的是pygtk、gtk剪贴板和keybinder。这就是我要做的 捕捉在另一个windows文本字段(如浏览器)中按下的键 弹出一个gtk应用程序并处理一些用户输入 将结果数据复制到gtk剪贴板 将剪贴板中的数据粘贴到原始窗口的文本字段中 清除剪贴板 我抓住了按键,很好地弹出了窗口。我可以复制到剪贴板上。我可以关闭gtk应用程序并将焦点返回到原始的windows文本字段。唯一的问题是我不知道如何完成第四步。现在,用户必须键入ctrl-v才能从剪贴板粘贴到文本字段中,我想消除这个按键 我能想

我使用的是pygtk、gtk剪贴板和keybinder。这就是我要做的

  • 捕捉在另一个windows文本字段(如浏览器)中按下的键
  • 弹出一个gtk应用程序并处理一些用户输入
  • 将结果数据复制到gtk剪贴板
  • 将剪贴板中的数据粘贴到原始窗口的文本字段中
  • 清除剪贴板

  • 我抓住了按键,很好地弹出了窗口。我可以复制到剪贴板上。我可以关闭gtk应用程序并将焦点返回到原始的windows文本字段。唯一的问题是我不知道如何完成第四步。现在,用户必须键入ctrl-v才能从剪贴板粘贴到文本字段中,我想消除这个按键

    我能想到的最好方法是使用python-wnck获取窗口名,然后使用gnome剪贴板复制到缓冲区,然后使用命令和窗口名对xdool进行子进程调用

    paste_cmd = 'ctrl+v'
    xdo_cmd = 'xdotool search "%s" windowactivate --sync key --clearmodifiers %s'
    
    这似乎很管用,但用一些本土的东西会更好