2017-07-09 146 views
1

我有兩個列表和一個函數。每次單擊鼠標時,該功能都會將項目從一個列表追加到另一個列表中。但是,鼠標有時會從列表中追加多個項目。在做了一些小小的挖掘之後,我發現這是因爲鼠標被拉長了太久。無論鼠標按住多長時間,我如何設置它,它只能追加一個項目?這裏是一個代碼示例:註冊多個點擊的pygame鼠標

list_A = [1,2,3,4,5,6] 
list_B = [] 

def appender(): 
    if mouse.get_pressed()[0] = 1 
     list_B.append(list_A[len(list_A)-1]) 
     list_A.remove(list_A[len(list_A)-1]) 

我在所有正確的設置中調用遊戲循環內的附加函數。但是,當鼠標按下時,它附加多個項目,有什麼建議?

+0

而不是使用mouse.get_pressed你可以嘗試在pygame.event.get()使用 '事件: 如果event.type == pygame的.MOUSEBUTTONDOWN: #do something' –

回答

2

我建議一種檢測鼠標點擊的替代方法。通過events在pygame的循環,並看看是否有任何人都MOUSEBUTTONDOWN

list_A = [1,2,3,4,5,6] 
list_B = [] 
def appender(): 
    for event in pygame.event.get(): 
     if event.type == pygame.MOUSEBUTTONDOWN: 
      list_B.append(list_A[len(list_A)-1]) 
      list_A.remove(list_A[len(list_A)-1])