'pygame.Surface'对象不可调用

时间:2013-09-16 15:45:34

标签: python pygame typeerror

我正在尝试显示消息队列,但我不明白为什么我收到类型错误。

以下整个错误。

Traceback (most recent call last):

** IDLE Internal Exception: 

File "C:\Python27\lib\idlelib\run.py", line 298, in runcode
    exec code in self.locals

File "C:\Documents and Settings\Mohammad Raza\Desktop\Python Scripts\messageQueue.py", line 28, in <module>

screen.blit( font.render(text, True, (0,0,0)) (0, y))

TypeError: 'pygame.Surface' object is not callable

代码:

import pygame
from pygame.locals import *
from sys import exit


pygame.init()

SCREEN_SIZE = (800, 600)
screen = pygame.display.set_mode(SCREEN_SIZE,0,32)

font = pygame.font.SysFont("arial",16);
font_height = font.get_linesize()
event_text= []

while True:

    event = pygame.event.wait()
    event_text.append(str(event))
    event_text = event_text[-SCREEN_SIZE[1]/font_height:]

    if event.type == QUIT:
        exit()

    screen.fill((255,255,255))

    y = SCREEN_SIZE[1]-font_height
    for text in reversed(event_text):
        screen.blit( font.render(text, True, (0,0,0)) (0, y))
        y -= font_height


    pygame.display.update()

1 个答案:

答案 0 :(得分:3)

缺少逗号:

screen.blit( font.render(text, True, (0,0,0)), (0, y))