質問させていただきます。
pygameを使ってタイピングゲームを作っているのですが、@などの記号を入力したいのですが、うまく行かない記号があります。shiftを押しながらのキー入力でイベントが発火するキーと、そうでないキーがあります。
python
1import pygame 2from pygame.locals import * 3import sys 4 5pygame.init() # pygame初期化 6screen = pygame.display.set_mode((800, 600)) # 画面サイズの設定 7pygame.display.set_caption("test") # スクリーンタイトル 8 9running = True 10 11while running: 12 13 screen.fill((0, 0, 0)) # 画面の塗りつぶし 14 pygame.display.update() # 画面の更新(=アップデート) 15 16 for event in pygame.event.get(): 17 if event.type == QUIT: # 「終了」のイベントが起こったら 18 running = False # runningをFalseにする=while文を抜ける 19 sys.exit() # プログラム終了 20 if event.type == KEYDOWN: 21 print(event.key) 22
このコードを実行しながらshift + 1, shift + 2, shift+3...shift+0と入力していくと、
1073742049
49
1073742049
1073742049
51
1073742049
52
1073742049
53
1073742049
1073742049
1073742049
1073742049
1073742049
1073742049
となります、つまり、1,3,4,5以外のキーは、shiftが押されながらは反応していないということだと思うのですが、原因は何でしょうか?
ちなみに外付けキーボードでも同様のことが起きました.
実行環境は
windows 11
pygame 2.0.1
python 3.8.6
です。
あなたの回答
tips
プレビュー