2017-07-09 100 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])