XDOTOOL不会将点击传递给特定窗口

时间:2013-08-16 09:55:09

标签: python tkinter xdotool

在这里遇到xdotool的一些问题 - 很棒的程序,但很遗憾没有表现出来。

from Tkinter import *
import os

class Ed:
 def __init__(self,parent):
    self.button = Button(parent,command=self.passthrough)
    self.button.pack()
    parent.geometry('+100+100')

 def passthrough(self):
     print 'clicked'
     os.popen("""
     window=$(xdotool selectwindow click)
     xdotool mousemove 110 140
     xdotool click --window $window
     """)

root = Tk()
app = Ed(root)
root.mainloop()

该程序应该呈现一个带有按钮的窗口。单击该按钮时,光标会发生变化,您可以将鼠标移开窗口并单击其后面的窗口(例如GIMP)。然后鼠标返回到按钮上方,但点击后面的程序。但是,它没有这样做。提前道歉,这是一个很难描述的想法。

我会非常感谢您提供的任何帮助。

干杯!

2 个答案:

答案 0 :(得分:1)

在“xdotool click --window $ window”行中,必须将其写为“xdotool click --window $ window 1”1,鼠标按钮才能单击。

答案 1 :(得分:0)

您不能使用popen来运行任意命令列表。 popen要求你给它一个命令来运行。

popen的文档在这里:http://docs.python.org/2/library/os.html#os.popen