클릭하면 버튼 기능을 한 번 실행할 수 없습니다. 마우스 버튼이 눌려지면 해제 될 때까지 함수 루프를 따라 실행됩니다. 클릭당 한 번 루프를 돌리고 싶습니다. 당신이 빨리가 반복적으로 루프를 통해 실행 당신이 할 수있는 클릭하면버튼 기능을 한 번 실행하십시오.
def Button(msg, x, y, w, h, ic, ac, action=None):
mouse = pygame.mouse.get_pos()
click = pygame.mouse.get_pressed()
if x+w > mouse[0] > x and y+h > mouse[1] > y:
pygame.draw.rect(window, ac, (x, y, w, h))
#if event.type == pygame.MOUSEBUTTONDOWN:
if click[0] == 1 and action != None:
pygame.draw.rect(window, lightgrey, (x, y, w, h))
if action == "undo":
print("hey")
if action == "reset":
for row in range(6):
for column in range(7):
board[row][column] = 0
elif action == "quit":
pygame.quit()
quit()
else:
pygame.draw.rect(window, ic, (x, y, w, h))
인쇄 ("안녕하세요") 인쇄 약 3 회 : 여기에 코드입니다.
가능한 한 [클릭 한 번만 등록하는 파이 게임 버튼을 얻을 수 있습니까?] (http://stackoverflow.com/questions/31300690/how-to-get-pygame-button-to-register -only-one-click) – numbermaniac