在Pygame 中取得按鍵狀態
在Pygame 中,KEYDOWN 和KEYUP 事件對按鍵事件提供有限的回饋,按鍵按下的瞬間按下或釋放按鍵。然而,為了持續監控按鍵狀態,需要另一種方法。
解決方案:使用 pygame.key.get_pressed()
解決方案在於利用 pygame.key.get_pressed()。 key.get_pressed() 來決定按鍵的目前狀態。此函數傳回布林列表,表示每個鍵的按下狀態。透過評估特定的按鍵索引,開發人員可以確定目前是否按住了特定的按鍵。
實作
要實現此方法,請將以下程式碼片段整合到主應用程式循環:
<code class="python">run = True while run: for event in pygame.event.get(): if event.type == pygame.QUIT: run = False keys = pygame.key.get_pressed() if keys[pygame.K_UP]: # Execute code for UP key press if keys[pygame.K_DOWN]: # Execute code for DOWN key press</code>
注意:
當事件透過pygame.event.pump() 處理時,pygame.key.get_pressed() 更新其狀態或pygame.event.get()。因此,在查詢按鍵狀態之前必須呼叫這些函數。
以上是如何在 Pygame 中持續監控按鍵狀態?的詳細內容。更多資訊請關注PHP中文網其他相關文章!