4

この数行の Python 3.2 コードは、最新の pygame モジュールを使用して画像を移動します。この例に関連しています: http://www.pygame.org/docs/tut/MoveIt.html

これが私のコードです:

import pygame
import sys 

pygame.init()
screen = pygame.display.set_mode((600,400))
bg = pygame.image.load('bg.jpg')
player = pygame.image.load('player.jpg')
pos = player.get_rect()

while True:
    for i in pygame.event.get():
       if i.type() == pygame.QUIT:
            sys.exit()
    screen.blit(bg,(0,0))
    screen.blit(player,(i,i))
    pygame.display.update()

実行時に表示されるエラーは次のとおりです。

トレースバック (最後の最後の呼び出し):
ファイル "C:/Users/Grounds Keeper Willy/Desktop/Python Code/test.py"、12 行目、
if i.type() == pygame.QUIT:
TypeError: 'int'オブジェクトは呼び出し可能ではありません

私は同様の質問を見つけましたが、答えは問題が関数名を変数としても使用していることであると述べました。これは私がやっていることではありません。ここで何が悪いのか理解できないようです。

4

2 に答える 2

5

それは読むべきです:

if i.type == pygame.QUIT:

それ以外の:

if i.type() == pygame.QUIT:

クラスのtypeメンバーはEvent関数ではないため、を使用して呼び出す必要はありません/呼び出すことはできません()

于 2012-08-06T08:55:51.883 に答える