1

私はPythonが初めてで、キーボードの矢印キーに従ってオブジェクトが左右に移動するゲームを作ろうとしています。タートル、呪いなどをインポートすることでこれを行うさまざまな方法を見てきましたが、のみを使用してこれを行うにはどうすればよいwin.getKey()ですか?

これまでのところ、これはありますが、機能していません:

while True:
    k = win.checkKey()
    if k == 'Left':
        object.move(-dx, dy)
    elif k == 'Right':
        object.move(dx, dy)
    elif k == 'period':
        break
4

1 に答える 1

1

あなたはコードの断片しか提供していないので、この質問に対して MCVE がどのように見えるかについて推測します。

from graphics import *

win = GraphWin("My Test", 100, 100)

my_object = Circle(Point(50, 50), 10)

my_object.draw(win)

dx, dy = 10, 0

while True:
    k = win.checkKey()

    if k == 'Left':
        my_object.move(-dx, dy)
    elif k == 'Right':
        my_object.move(dx, dy)
    elif k == 'period':
        break

win.close()

これが正しい場合、コードは私のシステムで正常に動作します。コンソールで入力するのではなく、矢印キーが必要なグラフィックス ウィンドウに入力するように、入力する前にポップアップするグラフィックス ウィンドウをクリックしてください。

また、 などの Python の組み込み名を再定義しないでくださいobject。この場合の例には影響しませんでしたが、期待どおりに動作しない場合に注意する必要があります。

于 2016-12-15T06:44:06.733 に答える