2

Pygame で USB ジョイスティックを検出しようとしています。このコードを実行するたびに、10 行目の「ジョイスティックが初期化されていません」というエラーでプログラムがクラッシュします。

import pygame as p

p.init()
stick = p.joystick.Joystick(0)
#get init returns always False
print("initialized:",bool(stick.get_init()))
#getting the name works as it should
print(stick.get_name())
#says always "pygame.error: Joystick not initialized"
print("axis_0",stick.get_axis(0))   
p.quit()

私は何か間違ったことをしていますか、それともこれはバグですか? (私は Python 3.2 と Windows 7 で最新の pygame バージョンを使用しています。) すべての情報をありがとう

4

1 に答える 1

4

私は自分でPygameを始めたばかりです。最初に使いpygame.joystick.init()ました。だから、私はあなたがと交換p.init()すると思いますp.joystick.init()

Pygame のドキュメントから: (http://www.pygame.org/docs/ref/joystick.html)

Joystick オブジェクトを初期化せずに、Joystick.get_name (ジョイスティック システム名を取得) 関数と Joystick.get_id (ジョイスティック ID を取得) 関数を呼び出すことができます。

そこに次のような行も入れる必要があると思います:

stick.init()

次に、スティックを初期化し、そこからイベントを受け取ります。

于 2012-08-03T19:17:52.800 に答える