2013-11-26 100 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顯示主循環中的其他內容可能正在運行,並且點擊事件仍會觸發。