Python Pygameでキーリピート

wxPythonでは画像の色合いがFinderのプレビューと違っていたが、Pygameではほとんど同じなようだ。

なので、以前作ったやつをPygameに移植したい。

そのためのメモ。

キー入力のリピートについて、その辺の記事では長押し版(get_pressed())とそうでないやつ(下のset_repeat()しない版)をけっこう見かけたが、 次のようにすればいい。

import pygame, sys
from pygame.locals import *

...

# パラメータは、delay, intervalであり、単位はミリ秒
pygame.key.set_repeat(500, 30)

while True:
    ...

    # KEYDOWNのイベントを取得
    for event in pygame.event.get(KEYDOWN):
        # pygame.key.set_repeat()で設定するとリピートされる
        if event.key == K_DOWN:
            print('key down')
        elif event.key == K_UP:
            print('key up')

    ...

参考 * pygame.key — Pygame v1.9.2 documentation

余談ですが、 Macbookのトラックパッドは紙越しでも操作できるみたい。 あと、なぜかVSCodeのPyGameの補完が効かない。

コメント

タイトルとURLをコピーしました