2013-11-26 57 views
0

我想弄清楚如何计算在窗口中点击鼠标的次数,以设置数量的限制。Python:计数和打印鼠标点击(Zelle的图形)

我在做的是一个游戏,必须找到一个看不见的圈子,我希望不同的困难影响到有多少点击被允许,直到你输掉游戏。但是我在计算鼠标点击时遇到了麻烦。

def mouseClicks(): 
     global click 
     click=click+1 

不完全确定如何设置它来检查win.getMouse每一次。任何帮助表示赞赏。

回答

1

这里的东西很简单:

from graphics import * 

def main(): 
    win = GraphWin("My Window", 100, 100) 
    clickCounter = 0 
    while clickCounter < 10: 
     win.getMouse() # Pause to view result 
     clickCounter += 1 
     print clickCounter 

main() 

这不是真正有用的,虽然,作为调用win.getMouse()暂停,直到鼠标点击。

Zelle构建于Tkinter之上,但似乎将事件驱动的编程抽象出来。

但是你仍然可以利用的Tkinter的功率:

from graphics import * 

clickCounter = 0 

def click(event): 
    global clickCounter 
    clickCounter += 1 
    print clickCounter 

def sillytask(): 
    print 'Just waiting around' 
    global clickCounter 
    if clickCounter >= 10: 
     win.quit() 
    else: 
     win.after(1000, sillytask) 

win = GraphWin("My Window", 100, 100) 
win.bind('<Button-1>', click) 
win.after(1000, sillytask) 
win.mainloop() 

在这里,我们bind点击一个回调函数。 sillytask显示主循环中的其他内容可能正在运行,并且点击事件仍会触发。